我看到有几个类似的问题,但我没有找到满意的答案。我有一个逗号分隔的文件,其中每行看起来像这样:
4477,52544,,,P,S, ,,SUSAN JONES,9534 Black Bear Dr,,"CITY, NV 89506",9534 BLACK BEAR DR,,CITY,NV,89506,2008,,,, , , , ,,1
出现的问题是当 token 转义带有引号“CITY, NV 89506”的逗号时
我需要一个处理转义 token 并包含每个 token (甚至是空 token )的结果。
最佳答案
考虑一个合适的 CSV 解析器,例如 opencsv 。它将经过严格测试(与新的本土解决方案不同)并处理边缘条件,例如您所描述的条件(以及许多您没有考虑过的情况)。
在下载中,有一个示例文件夹,其中包含“addresses.csv”,其中包含以下行:
Jim Sample,"3 Sample Street, Sampleville, Australia. 2615",jim@sample.com
在同一目录中,文件 AddressExample.java 解析此文件,并且与您的问题高度相关。
关于java - 使用转义引号分割逗号分隔的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12737399/