问题标签 [univocity]
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 - Univocity CSV 解析器会粘合整行,如果它以引号开头“
我univocity 2.7.5
用来解析csv
文件。到目前为止,它工作正常并将csv
文件中的一行解析为带有元素的字符串数组n
,其中 n = 一行中的列数。但是现在我有一个文件,其中行以引号开头"
,解析器无法处理它。它返回一行作为字符串数组,其中只有一个元素包含整行数据。我试图从csv
文件中删除该引用并且它工作正常,但大约有 500,000 行。我应该怎么做才能让它工作?
这是我文件中的示例行(源文件中也有引号):
这是我的代码:
csv - 使用单义性解析器加载大型 CSV 文件时过早的 EOF。
解析器配置如下:
抛出错误时的内部状态如下:
引发错误时的内部状态:line=1171815, column=4, record=1171815, charIndex=134217728, headers=[Counter, FirstName, LastName, IdNumber, StartDate, Salary, SecurityCleared, ManagerFName, ManagerLName, ManagerId, ProfileId, DateEvaluated, FriendFname, FriendLname, Friend],在 com.univocity.parsers.common.AbstractParser.handleException(AbstractParser.java:369) 在 com.univocity.parsers.common.AbstractParser.parseNext(AbstractParser.java:595) 解析的内容 = 201
java - 如何使用包含分隔符的 JSON 字段解析 CSV?
我有以下 CSV 文件,其中包含可能包含分隔符的 JSON 字段:
我尝试使用以下代码来获取整个字段,但它总是被内部分隔符分割:
预期输出:
电流输出:
当文件在引号之间时,如何告诉 CSV 解析器不要拆分?
java - 唯一性解析为 bean 导致空值
我正在尝试使用 univocity csv 解析器将超过 300 万行的 csv 文件解析为 java bean 列表。我像在我的示例中那样设置它,但是当我解析 csv 时,每个 java bean 都有空属性值。我玩弄了这些设置,但找不到我的错误在哪里。这些是我使用的 Maven 依赖项:
这是我的测试课:
}
这是我的豆子:
这是我的 csv 文件:
我使用我的toString()
方法的结果看起来总是这样:
编辑:
我的文件路径有错误。现在我收到以下错误:
java - java中使用CSV解析器的键值解析器实现
我正在编写一个程序来解析基于键值的日志,如下所示:
我正在使用 Univocity 解析器来做到这一点。这是我的代码。
但是解析器给了我这个输出:
预期输出在哪里
代码有问题还是这是解析器错误?
问候,
哈里
univocity - @Validate 在 UniVocity 解析器中与 CsvRoutines 一起使用时不会跳过无效行
我正在使用 Univocity 解析器版本 2.7.3。我有一个 CSV 文件,其中包含 100 万条记录,并且将来可能会增长。我只读取文件中的几个特定列,以下是我的要求:
不要在任何时候将 CSV 内容存储到内存中
如果 CSV 中的纬度或经度列为空/空白,则忽略/跳过 bean 创建
为了满足这些要求,我尝试实现 CsvRoutines,以便 CSV 数据不会复制到内存中。我在“纬度”和“经度”字段上都使用了@Validate 注释,并使用错误处理程序不抛出任何异常,以便在验证失败时跳过记录。
CSV 样本:
TestDTO.java
主.java
问题:
我实际上希望计数为零,因为我添加了错误处理程序并且没有抛出数据验证异常,但似乎情况并非如此。我认为@Validate 在遇到纬度或经度为空的记录时会抛出异常(同一记录中的两列也可能为空),该异常在错误处理程序中被处理和忽略/跳过。
基本上我不希望 UniVocity 在堆中创建和映射不必要的 DTO 对象(并导致内存不足),因为传入的 CSV 文件可能有超过 200 或 300k 条纬度/经度为空的记录。
我什至尝试在 @Validate 中添加自定义验证器,但徒劳无功。
有人可以让我知道我在这里缺少什么吗?
excel - CSV 文件,其值在引用文本限定符中具有单引号
我正在尝试解析具有单引号作为文本限定符的 CSV 文件。这里的问题是一些带有单引号文本限定符的值本身包含单引号,例如:
我正在努力解析文件,因为在这一行之后,所有剩余的行都被取代了。
我尝试使用 OpenCSV、UnivocityParsers 但没有得到任何运气。如果我将上面的行放在 excel ( Excel Image ) 中并将文本限定符作为单引号提供,它会给出正确的结果,而不会发生任何行位移。
scala - CsvParser 不适用于缺少双引号
我在文件中有一条消息,如下所示,我com.univocity.parsers.csv.CsvParser
用来根据分隔符拆分字符串(在本例中为-
)
1-bc-“名称”-def-address
1-abc-"名称-定义-地址
我创建我的CsvParser
对象
并解析输入消息,如:
输出是:
如果您看到输出,您可以看到对于第一条消息,字符串被正确拆分,但是对于第二条消息,它在第一个双引号之后将所有内容都作为一个值。有谁知道为什么会出现这样的行为以及如何获得所需的输出?我正在阅读每条消息作为一个字符串,它应该简单地将引号/双引号视为一个字符。
apache-spark - 加载 csv 文件时获取 com.univocity.parsers.common.TextParsingException
我正在尝试将数据中包含很多新行的 tsv 数据集加入到另一个数据帧并不断获取
com.univocity.parsers.common.TextParsingException
我已经清理了我的数据以将 \N 替换为 NA,因为我认为这可能是原因,但没有成功。
错误将我指向错误数据中的以下记录
tt0100054 2 Повелитель мух SUHH ru NA NA 0
堆栈跟踪如下
我已经尝试在 csv option("maxCharsPerCol","110000000") .option("multiLine","true") 中设置以下内容,但没有帮助。我将不胜感激任何帮助解决此问题。
我正在使用 spark 2.0.2 和 scala 2.11.8。
java - univocity - 如何从选定的字符中解析字符串
我有下一个 .csv 文件:
tt0102057, 6, 2010-06-19, 钩
tt0102059, 7 ,2013-06-23, 热点!
tt0102070, 5, 2010-02-10, 哈德逊鹰
我需要将第一列的值解析为 int 值,而不是字符串。所以我需要跳过前两个符号并将其余的作为整数。
如何在解析阶段使用单义解析器来做到这一点?
该代码有效并将数据保存到bean: