我有以下代码:
BufferedWriter buffWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile)));
buffWriter.write("\"time\",\"x voltage\", z voltage \n");
稍后,我再次调用buffwriter.write:
buffWriter.write("\"" + time[i] + "\",\"" + an_array[i] + "\", \"" + an_array2[i] + ",\n");
一切都很好,除了一个非常小的东西。在左侧有一个我的an_array2值。我如何摆脱这个?
答案 0 :(得分:0)
您可以尝试使用以下代码
buffWriter.write("\"" + time[i] + "\",\"" + an_array[i] + "\", " + an_array2[i] + ",\n");
答案 1 :(得分:0)
我建议您仔细查看代码,了解它正在做什么,而不仅仅是给您答案。让我们将长字符串连接分成多行:
buffWriter.write("\"" // "
+ time[i] // (the time)
+ "\",\"" // ","
+ an_array[i] // (array element)
+ "\", \"" // ", "
+ an_array2[i] // (array element)
+ ",\n"); // ,(line-break)
所以是的,在你的an_array2值之前有一个“因为你把它放在我写的那个位:
+ "\", \"" // ", "
如果只是想关闭之前的报价并添加逗号,您需要:
+ "\","
(您可能也可能不想要这个空间。)
请注意:
BufferedWriter
无关 - 您只是执行字符串连接学习如何自己诊断问题,以及了解自己代码的每一点都很重要。你明白为什么 "\", \""
的意思是“(双引号)(逗号)(空格)(双引号)”?如果没有,我们可以更详细地解释(或者您可以阅读section 3.10.6 of the Java Language Specification)。