我正在将一些数组写入CSV,但我在创建第二列时遇到问题。
我可以写第一列没问题。当我尝试附加到第二列时,它编写第二列,但在第一列的末尾。
public void printCSV() throws IOException{
// file writer
FileWriter writer = new FileWriter("file path");
for(int i = 0; i < myArray.length; i++){
if(myArray[0][i] == null){
writer.append(" ");
}else{
writer.append(myArray[0][i]);
writer.append("\n");
}
} // end of for loop
for(int i = 0; i < emptyResults.length; i++){
writer.append(",");
writer.append(String.valueOf(emptyResults[i]));
writer.append("\n");
}
writer.close();
}
示例输出:
column1 column2
entry1
entry2
entry3
entry4
entry1
entry2
entry3
我喜欢什么:
column1 column2
entry1 entry1
entry2 entry2
entry3 entry3
当我将第二个数组写入csv时,我使用&#34;,&#34;强制写入另一列。但它不会在第1行开始写作。
有什么想法吗?
感谢。
解决方案:每个循环都带有一个新行的单个循环。
for(int i = 0; i < 128; i++){
if(myArray[0][i] == null){
writer.append(" ");
}else{
writer.append("\n");
writer.append(myArray[0][i]+","+emptyResults[i]);
}
答案 0 :(得分:0)
来自您的代码&amp;解释我假设两个数组的大小相同。试试这个
public void printCSV() throws IOException{
// file writer
FileWriter writer = new FileWriter("file.txt");
for(int i = 0 ; i < myArray.length && i < emptyResults.length; i++){
if(myArray[0][i] == null){
writer.append(" "+String.valueOf(emptyResults[i]));
}else{
writer.append(myArray[0][i]+" "+String.valueOf(emptyResults[i]));
writer.append("\n");
}
} // end of for loop
writer.close();
}