广告
返回顶部
首页 > 资讯 > 精选 >怎么将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://www.lsjlt.com/news/354761.html(转载时请注明来源链接)

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么将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
  • 怎么在navicat中将csv文件导入到mysql
    本篇文章为大家展示了怎么在navicat中将csv文件导入到mysql,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.打开navicat,连接到数据库并找到自己想...
    99+
    2022-10-18
  • 怎么用vue展示.docx文件、excel文件和csv文件内容
    这篇文章主要介绍了怎么用vue展示.docx文件、excel文件和csv文件内容的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用vue展示.docx文件、excel文件和csv文件内容文章都会有所收获,下面...
    99+
    2023-07-06
  • eclipse怎么打开java文件
    首先打开Eclipse。点击“File”,选择“Open Projects from File Systems...”。选择“Directory...”。然后选择你要打开的Java文件,点击“确定”。最后点击“Finish”即可。编程界网,...
    99+
    2016-04-15
    java入门 eclipse 打开 java 文件
  • Java怎么实现将类数据逐行写入CSV文件
    这篇文章主要介绍“Java怎么实现将类数据逐行写入CSV文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java怎么实现将类数据逐行写入CSV文件”文章能帮助大家解决问题。代码自定义的CodeOb...
    99+
    2023-07-04
  • java中怎么打开exe文件
    函数介绍:Runtime 类代表着Java程序的运行时环境,每个Java程序都有一个Runtime实例,该类会被自动创建,我们可以通过Runtime.getRuntime() 方法来获取当前程序的Runtime实例。java视频教程推荐:j...
    99+
    2015-09-23
    java基础 java exe 文件
  • java的jar文件怎么打开
    jar文件其实是Java项目下生成的项目文件,当然也有用户称之为Java压缩包,里面封装了许多Java类以及方法,变量。如果用户想要打开jar文件,有两种方法,具体操作请看下文。推荐:java视频教程一、使用WinRAR打开jar文件首先我...
    99+
    2022-05-01
    java 文件
  • python怎么将打印信息输出到文件里
    在Python中,可以使用`print`函数的`file`参数将打印信息输出到文件中。具体的步骤如下:1. 打开文件,可以使用`op...
    99+
    2023-09-20
    python
  • java怎么打开二进制文件
    Java读取二进制文件,以字节为单位进行读取,还可读取图片、音乐文件、视频文件等。在Java中,提供了四种类来对文件进行操作,分别是InputStream、OutputStream、Reader、Writer,前两种是对字节流的操作,后两种...
    99+
    2020-12-01
    java入门 java 二进制文件 打开
  • java怎么将输出内容保存到文件
    在Java中,可以使用FileWriter或BufferedWriter类将输出内容保存到文件中。下面是一个简单的示例代码,演示了如...
    99+
    2023-10-18
    java
  • Java文件打包:路径到底怎么写?
    在Java开发中,文件打包是非常常见的操作。文件打包可以将多个文件打包成一个压缩文件,方便传输和存储。但是,在实际操作中,文件打包的路径问题经常让人头疼。本文将详细介绍Java文件打包中路径的写法。 一、文件路径的基本概念 在Java中,...
    99+
    2023-10-03
    打包 文件 path
  • Mac软件打开提示:已损坏,无法打开。您应该将它移到废纸篓-怎么解决?
    新入手的苹果电脑打开软件出现:“已损坏,无法打开。您应该将它移到废纸娄” 或 “已损坏,打不开。推出磁盘映像”。这个怎么解决? 1、开启允许任何来源 苹果已经取消了允许“任何来源”的选项。如果不启用“任何来源”的选项,那第三方软件很有可...
    99+
    2023-08-31
    macos
  • java的二进制文件怎么打开
    FileWriter只能接受字符串形式的参数,也就是说只能把内容存到文本文件。相对于文本文件,采用二进制格式的文件存储更省空间。InputStream用于按字节从输入流读取数据。其中的int read()方法读取一个字节,这个字节以整数形式...
    99+
    2014-07-22
    java基础 java
  • 利用Java怎么将本地文件显示在JSP文件中
    今天就跟大家聊聊有关利用Java怎么将本地文件显示在JSP文件中,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体代码如下:    <img na...
    99+
    2023-05-31
    java ava
  • 怎么将文件夹数据打包传输到云服务器
    要将文件夹数据打包传输到云服务器,可以按照以下步骤进行操作:1. 打开命令提示符(Windows)或终端(Mac/Linux)。2....
    99+
    2023-08-09
    云服务器
  • Win10系统下怎么打开启动文件夹怎么找不到
      以前用Win7或XP的时候,我们都可以很方便地通过开始菜单的启动文件夹来添加或删除开机启动项目。后来的Win8系统干脆取消了开始菜单,而如今Win10开始菜单虽然回归,但却没有了启动文件夹。那Win10如何打开启动文...
    99+
    2023-06-09
    Win10 启动文件夹 系统 文件夹
  • Vmware16虚拟机打不开怎么拷贝文件到本地?
    今天在vmware16中创建一个虚拟机并安装了系统,不小心把虚拟机中的系统搞坏了,进入不了系统桌面了,但是里面有好些文件还需要用,所以得想办法怎么把这些文件拷贝出来,该怎么把文件拷贝出来呢?下面我们就来看看详细的教程。 首先...
    99+
    2022-05-31
    虚拟机 Vmware16 拷贝文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作