作者热门文章
- 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 2.1.0。我有一个文件,其中包含一个带有双引号的字符串: "TEST"/37326330|TEST2 在配置中我设置参数:
我是一名优秀的程序员,十分优秀!