2010-07-26 86 views
5

如果要将用户创建的字符串存储在csv文件中。 是否有一个首选的库用于转义字符串,或者我应该编写自己的函数?用于存储在csv文件中的Java转义字符串

+0

可能重复(HTTP:/ /stackoverflow.com/questions/101100/csv-api-for-java) – finnw 2010-07-26 13:11:15

+0

http://stackoverflow.com/questions/200609/can-you-recommend-a-java-library-for-reading-and-possibly- writing-csv-files – Zaki 2010-07-26 13:12:22

+0

虽然RFC 4130非常简单。这里是另一个例子:http://stackoverflow.com/questions/3190303/how-to-create-csv-file-using-servlet/3190598#3190598 – BalusC 2010-07-26 14:16:43

回答

6

我建议你使用这篇文章推荐的库之一。尽管编写自己的CSV创建器/解析器似乎很容易,但您将遇到需要处理场景的问题,例如用逗号或用户引号引起的用户字符串,这些问题有时会非常麻烦。我用下面的库和他们工作得很好: -

+0

opencsv - 尼斯,精益JAR库,非常适合我。谢谢! – 2012-10-01 17:34:48

1

如果你正在写自己的实现,那么这里就是RFC你参考: http://tools.ietf.org/html/rfc4180

如果你的字符串不是太复杂,你可以轻松开发小功能,而不是使用一些库。我引用了上面的RFC,并在我的一个项目中为相同目的创建了小函数。

1

为寻找代码:
添加到您的pom.xml

<dependency> 
    <groupId>commons-lang</groupId> 
    <artifactId>commons-lang</artifactId> 
    <version>2.6</version> 
</dependency> 

然后使用:

String escaped = StringEscapeUtils.escapeCsv("tHIS String 'needs escaping'"); 
System.out.println(escaped); //safe for csv 
[对Java API CSV]的
相关问题