如何在Java中将数组写入.csv?
我正试图用Java编写一段代码,生成一个数据数组,我希望将该数据写入一列CSV文件中。然而,我正在努力获得正确的输出。我的程序生成数组中的填充 double[]wasp=新的double[1000] 它由多个函数之一填充,例如:如何在Java中将数组写入.csv?,java,csv,Java,Csv,我正试图用Java编写一段代码,生成一个数据数组,我希望将该数据写入一列CSV文件中。然而,我正在努力获得正确的输出。我的程序生成数组中的填充 double[]wasp=新的double[1000] 它由多个函数之一填充,例如: for (int i = 0; i < wasp.length; i++) { double mu = -10 + Math.random()*20; double sigma = 0 + Math.
for (int i = 0; i < wasp.length; i++) {
double mu = -10 + Math.random()*20;
double sigma = 0 + Math.random()*10;
wasp[i] = nextGaussian(mu, sigma);
description = "Normal";
Param1 = Double.toString(mu);
Param2 = Double.toString(sigma);
}
for(int i=0;i
我使用以下代码尝试将数组写入CSV:
FileWriter writer = new FileWriter("C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv");
for (int j = 0; j < wasp.length; j++) {
writer.append((char) wasp[j]);
writer.append(",");
}
writer.toString();
writer.flush();
writer.close();
FileWriter writer=newfilewriter(“C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv”);
对于(int j=0;j
但是,当我打开CSV文件时,它看起来“已损坏”,好像字符编码不正确或其他什么。数据也会填充文件中的多个列
我期望的输出是一个CSV文件,其中包含一列实际值;比如说,
1.467354
0.812738
3.595733
等等。然而,我得到的是一篇专栏文章,内容如下:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,ïïï,ïï,ïï,ïï,ïï,ï
我做错了什么?我查看了Java主页上的教程,并尝试在StackOverflow上采用其他类似的解决方案,但似乎我遗漏了一些关键的内容。在CSV格式中,每组数据由新行(\n)分隔,每列由逗号分隔。因此,如果您想要一列数据,那么您的代码应该如下所示
for (int j = 0; j < wasp.length; j++) {
writer.append((char) wasp[j]);
writer.append("\n");
}
for(int j=0;j
在CSV格式中,每组数据用新行(\n)分隔,每列用逗号分隔。因此,如果您想要一列数据,那么您的代码应该如下所示
for (int j = 0; j < wasp.length; j++) {
writer.append((char) wasp[j]);
writer.append("\n");
}
for(int j=0;j
在CSV格式中,每组数据用新行(\n)分隔,每列用逗号分隔。因此,如果您想要一列数据,那么您的代码应该如下所示
for (int j = 0; j < wasp.length; j++) {
writer.append((char) wasp[j]);
writer.append("\n");
}
for(int j=0;j
在CSV格式中,每组数据用新行(\n)分隔,每列用逗号分隔。因此,如果您想要一列数据,那么您的代码应该如下所示
for (int j = 0; j < wasp.length; j++) {
writer.append((char) wasp[j]);
writer.append("\n");
}
for(int j=0;j
只需使用string.valueOf(double d)
方法将double转换为string即可
FileWriter writer = new FileWriter("C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv");
for (int j = 0; j < wasp.length; j++) {
writer.append(String.valueOf(wasp[j]));
writer.append("\n");
}
writer.close();
FileWriter writer=newfilewriter(“C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv”);
对于(int j=0;j
或者,您也可以根据需要使用来格式化您的double 只需使用
string.valueOf(double d)
方法将双精度转换为字符串即可
FileWriter writer = new FileWriter("C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv");
for (int j = 0; j < wasp.length; j++) {
writer.append(String.valueOf(wasp[j]));
writer.append("\n");
}
writer.close();
FileWriter writer=newfilewriter(“C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv”);
对于(int j=0;j
或者,您也可以根据需要使用来格式化您的double 只需使用
string.valueOf(double d)
方法将双精度转换为字符串即可
FileWriter writer = new FileWriter("C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv");
for (int j = 0; j < wasp.length; j++) {
writer.append(String.valueOf(wasp[j]));
writer.append("\n");
}
writer.close();
FileWriter writer=newfilewriter(“C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv”);
对于(int j=0;j
或者,您也可以根据需要使用来格式化您的double 只需使用
string.valueOf(double d)
方法将双精度转换为字符串即可
FileWriter writer = new FileWriter("C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv");
for (int j = 0; j < wasp.length; j++) {
writer.append(String.valueOf(wasp[j]));
writer.append("\n");
}
writer.close();
FileWriter writer=newfilewriter(“C:\\Users\\Havok\\Google Drive\\Skripsie\\R\\JavaOut.csv”);
对于(int j=0;j
或者,您也可以根据需要使用来格式化您的double wasp数组的内容是什么?您不必使用writer.toString()。代码似乎没问题。你能告诉我们你期望得到什么吗?另外,请告诉我们
wasp
Cool的定义,它将根据定义和输出样本进行编辑。wasp的类型是什么?为什么您需要(char)wasp[j]
铸造?如果你想有一个单一列的CSV文件,你不需要“,”,但你需要一行结束。如果添加“,”表示有两列,其中一列为空。您也不需要调用toString()和flush()方法。wasp数组的内容是什么?您不必使用writer.toString()。代码似乎没问题。你能告诉我们你期望得到什么吗?另外,请告诉我们wasp
Cool的定义,它将根据定义和输出样本进行编辑。wasp的类型是什么?为什么您需要(char)wasp[j]
铸造?如果你想有一个单一列的CSV文件,你不需要“,”,但你需要一行结束。如果你加上“,”意味着你有两列和一列