我正在从CSV文件中读取数据,并将字符串放入名为album
的数组列表中。字符串之一是:The Beatles ("The White Album")
,而当我使用System.out.print(album.get(index))
打印时,输出是:
"The Beatles (""The White Album"")"
为什么在开头和结尾以及中间还有多余的引号?
我尝试用\"
替换字符串的引号,以便它也将引号作为字符串,但是输出为:
\"The Beatles (\\"The White Album\\")\
我尝试的代码:
System.out.print(album.get(index).replace('"','\\"');
答案 0 :(得分:1)
CSV用逗号分隔值:
value1,value2,value3
但是,如果值本身包含逗号,例如value,3
,该怎么办? CSV表示没问题,我们将用引号引起来:
value1,value2,"value,3"
因此,现在引号用于用逗号括起来的值...如果这样的值本身包含引号,例如value "3"
,该怎么办? CSV表示没问题,我们将引号替换为双引号:
value1,value2,"value ""3"""
在您的情况下,您可能想做的是这样:
"
开头,请照原样使用。"
开头:
str.substring(1, str.length() - 1)
""
替换为"