返回顶部
首页 > 资讯 > 精选 >怎么将Java打开CSV文件到JTable展示
  • 656
分享到

怎么将Java打开CSV文件到JTable展示

2023-07-05 19:07:45 656人浏览 独家记忆
摘要

本文小编为大家详细介绍“怎么将Java打开CSV文件到JTable展示”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么将Java打开CSV文件到JTable展示”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。概

本文小编为大家详细介绍“怎么将Java打开CSV文件到JTable展示”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么将Java打开CSV文件到JTable展示”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

概述

主要知识点

a.Swingnode类 :把Java swing组件封装成一个JavaFX的Node,使得Java Swing可以和JavaFX嵌套在一起使用,JavaSwing贼丑,但操作简单,JavaFX的表格组件(TableView等)有点复杂,所以选择嵌套JavaSwing来使用,丑就丑吧

b.javacsv-2.0.jar: 用于通过文件地址读取csv文件,并可以进行一系列操作.尽管2008年之后就不再更新,但操作个csv文件也够用了。

c.FileChoose类 :JavaFX的一个文件选择器,可以打开本机的资源管理器,UI美观与否取决于你的系统版本。

d.CsvReader类 : javacsv-2.0.jar 包下的一个工具类,主要通过它来对csv文件进行操作

e.JTable类:创建一个JTable实例做csv文件打开后的展示,需要注意参数的顺序,表格内容是一个二维数组,表头是一个一维数组

JTable table = new JTable(表格内容,表头);

f. 把一位数组存进一维数组:

String[][] arr = new String[10][];//开辟一个10行的二维数组String[] row1 = {"id","name","sex","age"}; arr[0] = row1;//存进二维数组

g. JTable不显示表头:需要把JTable对象放进一个Pane里

JTable table = new JTable(表内容,表头);jscrollPane jScrollPane = new JScrollPane(table); SwingNode swingNode = new SwingNode();swingNode.setContent(jScrollPane);//使用swingNode封装swing组件,就可以在Javafx中用了

CsvReader的主要方法

  • new CsvReader(String filePath) 初始化构造时需要传入一个本地csv文件地址

  • boolean readHeaders() 读取表头并跳过

  • String[] getHeaders() 获取csv文件表头(很奇怪,需要readHeaders()方法调用过后,才能获取到,不然报空指针异常)

也就是这样:

CsvReader reader = new CsvReader("xxx.csv");reader.readHeaders(); //没有这句话,执行下面会报错String[] head = reader.getHeaders();
  • boolean readRecord() 读取一行csv内容,只要你调用了,下次再调用就会切换到csv的下一行,通常我们使用一个while循环来及时把所有内容一行行进行操作

  • String getRawRecord() 读取一行数据

while (reader.readRecord()){    System.out.println(reader.getRawRecord());//输出一行内容}

实例 - 读取本地桌面的一个csv文件

@Override    public void start(Stage primaryStage) throws Exception {        primaryStage.setTitle("文件选择器");        primaryStage.setHeight(600);        primaryStage.setWidth(800);         final FileChooser fileChooser = new FileChooser();         //设置打开资源管理器后的文件过滤        fileChooser.getExtensionFilters().addAll(                new FileChooser.ExtensionFilter("All Images","*.*"),                new FileChooser.ExtensionFilter("PNG","*.png"),                new FileChooser.ExtensionFilter("MP4","*.mp4"),                new FileChooser.ExtensionFilter("CSV","*.csv")        );         final Button open = new Button("打开文件");         final GridPane inputGridPane = new GridPane();//创建格子布局面板        GridPane.setConstraints(open,0,0);//第0行0列         inputGridPane.setHgap(6.0);//设置水平间距        inputGridPane.setVgap(6.0);//设置垂直间距        inputGridPane.getChildren().addAll(open);//添加按钮         final Pane rootGroup = new VBox(12);//创建一个垂直盒子布局器        rootGroup.getChildren().addAll(inputGridPane);//把格子面板放进来        rootGroup.setPadding(new Insets(12,12,12,12));         primaryStage.setScene(new Scene(rootGroup));        primaryStage.show(); //设置点击-打开文件-的动作事件open.setOnAction(event -> {            File file = fileChooser.showOpenDialog(primaryStage);//在当前窗口打开文件选择器            if (file != null){                try {                    FileInputStream inputStream = new FileInputStream(file);                    BufferedInputStream stream = new BufferedInputStream(inputStream);                    String fileName = file.getName();                    String filePath = file.getAbsolutePath();                    System.out.println("文件路径 = "+filePath);                    try {                        CSVDemo.read(filePath);                    } catch (IOException e) {                        e.printStackTrace();                    }                        //封装JTable,使得JTable和Javafx嵌套在一起                        SwingNode swingNode = new SwingNode();                    try {                        JTable table = read(filePath);                        JScrollPane jScrollPane = new JScrollPane(table);                        swingNode.setContent(jScrollPane);                    } catch (IOException e) {                        e.printStackTrace();                    }                //设置JTable打开后表格的相对位置                GridPane.setConstraints(swingNode,0,1);                    inputGridPane.getChildren().add(swingNode);                } catch (FileNotFoundException e) {                    e.printStackTrace();                }            }        });}//读取csv文件并把它读取到JTable中返回public static JTable read(String filePath) throws IOException {             CsvReader reader = new CsvReader(filePath);            reader.readHeaders();//跳过表头            String[] head = reader.getHeaders();             List<String []> list = new ArrayList<>();            String s = reader.getRawRecord();            System.out.println("表头 "+s);            String[] r1 = dataToArray(s);//            list.add(r1);             while (reader.readRecord()) {                System.out.println(reader.getRawRecord());                list.add(dataToArray(reader.getRawRecord()));            }        String[][] data = new String[list.size()][];        System.out.println("一共"+list.size()+"行数据");        for (int i = 0; i < data.length; i++) {            data[i] = list.get(i);        }            JTable table = new JTable(data,head);            return table;     }//将每一行的数据从String转为String数组    public static String[] dataToArray(String row){        String[] res = row.split(",");        return res;    }

效果展示

怎么将Java打开CSV文件到JTable展示

JScrollPane封装JTable,SwingNode封装JScrollPane

怎么将Java打开CSV文件到JTable展示

读到这里,这篇“怎么将Java打开CSV文件到JTable展示”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: 怎么将Java打开CSV文件到JTable展示

本文链接: https://lsjlt.com/news/354761.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么将Java打开CSV文件到JTable展示
    本文小编为大家详细介绍“怎么将Java打开CSV文件到JTable展示”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么将Java打开CSV文件到JTable展示”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。概...
    99+
    2023-07-05
  • 如何将Java打开CSV文件到JTable展示
    目录概述主要知识点CsvReader的主要方法实例 - 读取本地桌面的一个csv文件本文主要介绍了如何将Java打开CSV文件到JTable展示,废话不多说,具体如下: 概述 主要...
    99+
    2023-05-13
    Java打开CSV文件到JTable Java打开CSV到JTable
  • csv文件怎么打开
    CSV文件可以使用文本编辑器(如记事本、Sublime Text等)或者电子表格软件来打开。使用文本编辑器打开CSV文件:1. 找到CSV文件,右键点击并选择“打开方式”或“使用其他程序”。2. 选择文本编辑器,如记事本,点击“确定”或...
    99+
    2023-08-11
    csv文件
  • windows csv文件怎么打开
    这篇文章主要介绍“windows csv文件怎么打开”,在日常操作中,相信很多人在windows csv文件怎么打开问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”windows csv文件怎么打开”的疑惑有所...
    99+
    2023-07-02
  • 如何用phpexcel将Excel文件转成CSV文件并打开
    这篇“如何用phpexcel将Excel文件转成CSV文件并打开”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何用phpe...
    99+
    2023-07-05
  • 怎么用vue展示.docx文件、excel文件和csv文件内容
    这篇文章主要介绍了怎么用vue展示.docx文件、excel文件和csv文件内容的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用vue展示.docx文件、excel文件和csv文件内容文章都会有所收获,下面...
    99+
    2023-07-06
  • 怎么在navicat中将csv文件导入到mysql
    本篇文章为大家展示了怎么在navicat中将csv文件导入到mysql,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.打开navicat,连接到数据库并找到自己想...
    99+
    2024-04-02
  • java怎么将变量值写入CSV文件
    可以使用Java中的CSV库来将变量值写入CSV文件。一种常用的方法是使用OpenCSV库。以下是一个示例代码,演示如何将变量值写入...
    99+
    2024-03-14
    java
  • eclipse怎么打开java文件
    首先打开Eclipse。点击“File”,选择“Open Projects from File Systems...”。选择“Directory...”。然后选择你要打开的Java文件,点击“确定”。最后点击“Finish”即可。编程界网,...
    99+
    2016-04-15
    java入门 eclipse 打开 java 文件
  • pandas怎么将数据写入csv文件
    在使用Pandas将数据写入CSV文件时,可以使用`to_csv()`方法。以下是具体的步骤:1. 导入Pandas库:```pyt...
    99+
    2023-09-15
    pandas
  • Java怎么实现将类数据逐行写入CSV文件
    这篇文章主要介绍“Java怎么实现将类数据逐行写入CSV文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java怎么实现将类数据逐行写入CSV文件”文章能帮助大家解决问题。代码自定义的CodeOb...
    99+
    2023-07-04
  • java的jar文件怎么打开
    jar文件其实是Java项目下生成的项目文件,当然也有用户称之为Java压缩包,里面封装了许多Java类以及方法,变量。如果用户想要打开jar文件,有两种方法,具体操作请看下文。推荐:java视频教程一、使用WinRAR打开jar文件首先我...
    99+
    2022-05-01
    java 文件
  • java中怎么打开exe文件
    函数介绍:Runtime 类代表着Java程序的运行时环境,每个Java程序都有一个Runtime实例,该类会被自动创建,我们可以通过Runtime.getRuntime() 方法来获取当前程序的Runtime实例。java视频教程推荐:j...
    99+
    2015-09-23
    java基础 java exe 文件
  • Python怎么批量将csv文件转化成xml文件
    这篇文章主要介绍了Python怎么批量将csv文件转化成xml文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python主要应用领域有哪些1、云计算,典型应用OpenSt...
    99+
    2023-06-15
  • 怎么将csv文件导入oracle数据库
    将CSV文件导入Oracle数据库可以通过以下步骤实现: 创建一个表格来存储CSV文件中的数据。你需要使用CREATE TABLE...
    99+
    2024-05-11
    oracle
  • java怎么打开二进制文件
    Java读取二进制文件,以字节为单位进行读取,还可读取图片、音乐文件、视频文件等。在Java中,提供了四种类来对文件进行操作,分别是InputStream、OutputStream、Reader、Writer,前两种是对字节流的操作,后两种...
    99+
    2020-12-01
    java入门 java 二进制文件 打开
  • java怎么解析csv文件内容
    在Java中解析CSV文件内容通常使用第三方库,比如Apache Commons CSV或OpenCSV。以下是使用Apache C...
    99+
    2024-03-14
    java
  • python怎么将打印信息输出到文件里
    在Python中,可以使用`print`函数的`file`参数将打印信息输出到文件中。具体的步骤如下:1. 打开文件,可以使用`op...
    99+
    2023-09-20
    python
  • 怎么将csv文件导入sqlserver数据库中
    要将CSV文件导入到SQL Server数据库中,可以通过以下步骤: 打开SQL Server Management Studio...
    99+
    2024-04-09
    sqlserver
  • plsql怎么导出数据到csv文件中
    在PL/SQL中,可以使用UTL_FILE包中的PUT_LINE函数将数据导出到CSV文件中。以下是一个示例: 首先,创建一个存储...
    99+
    2024-04-09
    plsql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作