- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想要用分隔符解析文件。我使用BeanIO 2.1.0。我有一个文件,其中包含一个带有双引号的字符串:
"TEST"/37326330|TEST2
在配置中我设置参数:
<stream name="csvStream" format="csv">
<parser>
<property name="delimiter" value="|"/>
<property name="unquotedQuotesAllowed" value="true"/>
</parser>
</stream>
但是它不起作用!我收到错误:
org.beanio.MalformedRecordException: Malformed record at line 1: Invalid character found outside of quoted field at line 1
但是为什么呢?为什么这个参数不起作用?
最佳答案
我假设您想要保留/保留双引号 ("
)。
unquotedQuotesAllowed
配置选项仅适用于 CSV 流,但根据您的示例测试数据,您使用管道符号 (|
) 作为分隔符。是的,您可以更改 CSV 流的分隔符,但我认为最好仅使用配置为 delimited
格式的流映射。在我看来,这更容易使用,并且您不需要遵守 CSV 格式的所有规则和微妙之处。
然后我将使用以下内容:
<stream name="csvStream" format="delimited">
<parser>
<property name="delimiter" value="|"/>
</parser>
<record name="...">
....
</record>
</stream>
使用上面的映射,我得到以下输出:
Field1: "TEST"/37326330, Field2: TEST2
关于java - BeanIO unquotedQuotesAllowed 在 CSV 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55412748/
我有并行读取员工、地址和联系人文件并将其转换为 beanIO 对象并合并 beanIO 对象以生成完整的 employeeDetails 对象的用例。 Emp 文件: 1 Foo Engineer 2
我正在尝试使用 BeanIO 读取/写入 Android 应用程序中的 csv 文件。当我尝试创建 StreamFactory 的实例时,出现以下错误: 03-02 08:52:19.076: E/A
我有一个采用 ANSI (windows-1252) 编码的 .txt 文件,我可以在 Windows 上读取它,但不能在 unix 上读取。 这是 xml 映射文件:
这是我的问题:我必须使用 BeanIO 来读取 CSV。这个 CSV 类似于: s1_el1;s1_el2;s1_el3;s1_el4;X1;Y1;Z1 s2_el1;s2_el2;s2_el3;s2
我正在尝试使用 beanio 将带注释的类写入固定长度的文件。所有类都已注释,但出现异常 "Invalid field 'employees', in record 'team', in stream
我在一个文件中有以下两种类型的记录,我可以使用 BeanIO 解析该文件以获取记录类型 1 或 2 中的任何一种,但我无法在单个解析器中同时执行这两种操作。我不知道如何在单个记录中使用我的两个映射。请
我正在使用这种模式: 这会将数字转换为小数点后 10 位。但是,如果数字有 7 位小数,则会添加 3 个尾随 0。如何更改模式以不添加尾随 0。 示例: 如果数字为 8.7829
我正在使用 BeanIO 来解析固定宽度的文本文件。例如,进入我的项目的文件看起来像以下固定宽度文本: CD DummyValue3 EF DummyValue4 DummyValue5 Dumm
我有一个用于 beanio 的固定长度记录 bean,如下所示: @Record public class RecordBean { @Field(at = 0, length = 3)
我目前正在开发一个通过平面文件获取数据的遗留应用程序。使用 beanio 来读取和写入平面文件,并通过注释定义记录。我的问题是其中一个平面文件的规范要求使用索引 20 到 26(不是记录末尾)的空白来
我有一个固定长度的流。我想将编码设置为 Windows-1252 或 latin1。 我该怎么做? 通过 XML 会更好,但如果代码是唯一的方式,也可以。 最佳答案 字符编码是使用基本的 Java I
当我想用Xmappr注释指定java类中XML元素的属性时,我使用@Attribute注释,例如: exampleclass.java: @Attribute("Code") private Stri
这是我的 BeanIO xml 配置文件: 问题是我需要由调用此 xml 文件来解析文件的类动态设置“MM/dd/yyyy
我最近将 BeanIO 框架升级到 2.0.6 版本,以将我的平面(制表符分隔)文件解析为 java 对象,我注意到如此奇怪的行为。我不能在最后一个文件行中将字段保留为空,因为 BeanIO 向我抛出
所以我正在使用 BeanIO,我必须编写一个类型处理程序,如果通用列表为空,它将为列表分配 null。例如,我正在从 xml 文件中导入地址。 如果有关于地址的完整信息,xml 如下所示: aaaa
我正在使用BeanIO将平面文件转换为对象列表。使用以下代码片段。 while ((MyCustomRecord obj = (MyCustomRecord) in.read()) != null)
BeanIO reference guide声明对于固定长度的流: if required is set to false, spaces are unmarshalled to a null fie
我尝试使用 BeanIO 将 CSV 转换为 POJO,发现一个问题可能会对你们中的一些人有所帮助。 这是我得到的错误“记录'user'中的无效字段'LastName',在流'userTemplate
我正在尝试使用 BeanIO 框架将数据列表写入 CSV。我能够将单个对象写入 CSV,但无法写入数据列表。 我试过下面的代码: package com.beanio.example; import
我想要用分隔符解析文件。我使用BeanIO 2.1.0。我有一个文件,其中包含一个带有双引号的字符串: "TEST"/37326330|TEST2 在配置中我设置参数:
我是一名优秀的程序员,十分优秀!