用于将Array转换为CSV的Java API

Ana*_*ige 11 java csv utilities

假设我有一个int,float,string等数组.是否有任何实用程序API(例如Commons,Guava)会给我一个逗号分隔的字符串?

像这样,

int[] a = {1,2,3,4,5}. 
String s = magicAPI.getCSV(a); // s == "1,2,3,4,5";
Run Code Online (Sandbox Code Playgroud)

ass*_*ias 25

对于这个简单的用例,您可以使用逗号简单地连接字符串.如果您使用Java 8:

String csv = String.join(",", yourArray);
Run Code Online (Sandbox Code Playgroud)

否则公地琅具有join()方法:

String csv = org.apache.commons.lang3.StringUtils.join(yourArray, ",");
Run Code Online (Sandbox Code Playgroud)


mil*_*ose 6

你提到Google Guava,它有这个Joiner实用程序:

String s = Joiner.on(",").join(a);
Run Code Online (Sandbox Code Playgroud)


mun*_*ngm 4

我过去使用过OpenCSV 。

StringWriter stringWriter = new StringWriter();
int[] a = {1,2,3,4,5};
String[] b = new String[a.length];
for ( int i = 0; i < a.length; i++) {
    b[i] = a[i];
}
CSVWriter csvWriter = new CSVWriter(stringWriter, ",");
csvWriter.writeNext(b);
Run Code Online (Sandbox Code Playgroud)

但是,对于这样一个简单的示例,您可能只想使用 aStringBuilder和 afor循环