如何读取Java中的.csv文件,其中包含多行的单元格?

如何读取Java中的.csv文件,其中包含多行的单元格?,第1张

概述如何读取Java中的.csv文件,其中包含多行的单元格?

我正在尝试读取Java程序中的.csv文件。 该文件有一些包含多行的单元格。

我在一个linux *** 作系统,所以我试图删除与下列换行符:

awk -v RS =“”'{gsub(/ n /,“”)} 1'cleanPaperAuthor.csv> cleanPaperAuthor1.csv

DID导致单元格中的多行数据全部显示在一行上。 但是当我试图读取java中的文件时,读者仍然认为它在单元数据中间遇到了行尾。

从excel中删除大量的行

合并CSV文件:附加而不是合并

Python – ValueError:float()的无效文字:

从linux'ps'生成一个CSV列表

用AWK增加date几天和几个月

所以我试了awk -v RS =“”'{gsub(/ r /,“”)} 1'cleanPaperAuthor1.csv> cleanPaperAuthor2.csv

这导致.csv文件中的所有数据放在一行上。

于是我试了awk -v RS =“”'{gsub(/ r n /,“”)} 1'cleanPaperAuthor.csv> cleanPaperAuthor3.csv。

我不确定,如果这工作 – 我仍然在打开文件的过程。

我知道那里有一个CSVReader类,但是我真的很想弄清楚我可以做什么,而不必处理设置和更改代码。 任何人有任何想法? 在这一点上,我完全糊涂了。

liNUX – Shell脚本 – 从平面文件生成地图(键值对)

在shell中将.txt转换为.csv

合并很多大型CSV文件(在linux中)

加载数据infile,区别windows和linux

使用脚本将.csv文件加载到MysqL数据库中

使用CSV解析器非常简单; 设置和API。 而且,除了处理跨越多行的值之外,还可以处理带引号的元素中的逗号等内容,并且只对引号内的值进行解析。 此外,您还可以使用该库将文本序列化回CSV。

以下是OpenCSV读取一行csv值的示例。

String input = "value1,"value2","value3,1234","value4n" + "value5n" + "value6""; try (CSVReader reader = new CSVReader(new StringReader(input))) { String [] tokens; while ((tokens = reader.readNext()) != null) { System.out.println(Arrays.toString(tokens)); } } catch (IOException e) { e.printstacktrace(); }

输出:( “value3,1234”是一个值。)

[value1,value2,value3,1234,value4 value5 value6]

只要确保将Apache Commons Lang 3.x jar添加到您的类路径中即可 。

String UPLOADED_FolDER = "/home/Rahul/Developement/Rahul/personal/uploadedfile/"; try { // ** get the file and store at to that location ** byte[] bytes = file.getBytes(); Path path = Paths.get(UPLOADED_FolDER + file.getoriginalfilename()); files.write(path,bytes); redirectAttributes.addFlashAttribute("You successfully uploaded '" + file.getoriginalfilename() + "'"); } catch (IOException e) { e.printstacktrace(); } try { String filename = file.getoriginalfilename(); System.out.println("/home/Rahul/Developement/Rahul/personal/uploadedfile/" + filename); String filePath = new file("/home/Rahul/Developement/Rahul/personal/uploadedfile/") .getabsolutePath(); boolean check = true; file file1 = new file("/home/Rahul/Developement/Rahul/personal/uploadedfile/" + filename); System.out.println(file1.exists()); // TO CHECK file IS CSV OR NOT if (filename.endsWith(".csv")) { check = true; System.out.println("extension"); if (!filename.isEmpty()) { // *** to read the file from the location // **("/home/Rahul/Developement/Rahul/personal/uploadedfile/")** BufferedReader br = new BufferedReader(new fileReader( "/home/Rahul/Developement/Rahul/personal/uploadedfile/" + filename)); inputStream is = new fileinputStream( "/home/Rahul/Developement/Rahul/personal/uploadedfile/" + filename); }

总结

以上是内存溢出为你收集整理的如何读取Java中的.csv文件,其中包含多行的单元格?全部内容,希望文章能够帮你解决如何读取Java中的.csv文件,其中包含多行的单元格?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1211405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存