问题标签 [apache-commons-csv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Apache CSV 解析器无法处理带引号的制表符分隔数据
我想解析一份 Google 电子书交易报告。我在 Notepad++ 中打开它以准确查看归档和记录分隔符。它是一个制表符分隔的文件,每个标题字段和数据字段都用引号引起来。CSV 文件的前两行是:
我使用以下代码解析 CSV 文件:
当我调试解析过程时,我可以看到 record.get("Author") 引发了运行时异常:
显然我有名为作者的列。知道出了什么问题吗?
java - 忽略Apache Commons CSV / OpenCSV中引号括起来的字段中的分隔符?
我必须解析一个 csv 文件,该文件具有如下所示的字段:
并产生两个字段:
我不确定如何使用 Apache Commons CSV 或 OpenCSV 简洁地做到这一点,所以我正在寻找一些指导。可能只是我不完全理解文档中提到org.apache.commons.csv.CSVFormat
的属性“quoteChar” ,但在我能找到的任何地方都没有清楚地解释过。如果是这样,如果您能指出我对该功能的更好文档,那将非常有帮助。
这是一个简短的示例,显示了我的问题以及我尝试过的内容和结果:
请注意,如果您从输入中排除括号,它可以正常工作。
java - 引号内 CRLF 的 EoF 错误(common-csv)
从 hdfs 读取 csv 时出现以下错误 -
java.lang.RuntimeException: java.io.IOException: (startline 1) EOF reached before encapsulated token finished
当我查看 csv 文件时发现列中的 CRLF(换行符)导致此错误。
如何解决这个问题?
我正在使用 commons-csv-1.4
apache-camel - 使用 Apache Camel 下载和解析 CSV
我想使用下载和解析大型 CSV camel-csv
,但我无法找到令我满意的解决方案。camel-csv
似乎旨在读取和处理放置在磁盘上的文件。
我想通过 HTTP 下载 URL 列表并在下载流时对其进行解析。我可以通过绕过来做到这camel-csv
一点:
但是是否可以使用类似camel-ahc
下载文件并将其通过管道传输到 csv 解组的方法?就像是:
java - 模拟 Apache Commons CSV CSVRecord
在某些时候,我的代码需要接触CSVRecord,但我想不出一种方法来创建它的模拟版本。
该类是最终的,因此不能被嘲笑。构造函数是私有的,所以我不能创建它的实例。一种方法是如何测试使用CSVRecord
该类的代码?
现在唯一可行的解决方案是解析测试夹具以获取对象的实例。这是我最好的方法吗?
java - 带引号的 Apache commons-csv 错误
我正在使用 org.apache.commons-csv 1.4,本周我在我们的一个 junit 测试中发现了这种奇怪的行为:
*错误案例
输入 .csv
爪哇KO:
[0.0] DAR_123451
[0.1] XXXXX Hello World "Hello World XXX\nDAR_123456 ,XXXXX Hello World "Hello World XXX
*正确案例
输入 .csv
爪哇好:
[0.0] DAR_123451 [0.1] XXXXX Hello World “Hello World” XXX
[1.0] DAR_123452 [1.1] XXXXX Hello World “Hello World” XXX
我无法将 commons csv 库设置为正常工作,这似乎是一个错误,我们如何才能正确读取字符串中带有单引号的字符串?
csv - Apache commons csv如何从csv文件编辑特定列
我可以使用以下代码读取 csv 文件,
但是,我想在姓氏后面加上“ABC”并更新同一个文件。有没有办法做到这一点?
java - 从 CSVRecord 获取数据而无需访问标头值
我正在解密一个字符串以显示多个逗号分隔的值,并且我想访问各个信息,但加密的字符串不包括标头值。
我知道,在读取特定列的 CSV 文件信息时,可以通过以下方式访问:
其中 ID 是表中的标题值,但似乎没有办法在不知道标题名称的情况下访问它。
加密的字符串正在另一个应用程序中解密。
有没有办法在不知道标题值的情况下读取逗号分隔值的访问权限,或者是否有任何替代 CSVRecord 的方法?
java - 如何使用 Apache Commons CSV 解析以 GB18030 编码的 csv 文件
我有一个用 GB18030 编码的 csv 文件,我想使用apache commons CSV来解析文件并获取文件中的汉字。
这个怎么做?因为我使用默认配置获得了一些有线字符。
谢谢
java - 使用 Commons CSV 解析 CSV - 引号内的引号导致 IOException
我正在使用Commons CSV来解析与电视节目相关的 CSV 内容。其中一个节目的节目名称包含双引号;
116,6,2,29 Sep 10,""JJ"(60 分钟)"," http://www.tvmaze.com/episodes/4855/criminal-minds-6x02-jj "
节目名称是“JJ”(60 分钟),它已经用双引号括起来了。这是在封装的标记和分隔符之间抛出 IOException java.io.IOException: (line 1) invalid char。
CSVFormat.DEFAULT 已设置 withQuote('"')
我认为这个 CSV 的格式不正确,因为“”JJ“(60 分钟)”应该是“”“JJ”“(60 分钟)”——但是有没有办法让 commons CSV 来处理这个或者我需要手动修复这个条目?
附加信息:其他节目名称在 CSV 条目中包含空格和逗号,并放在双引号内。