【发布时间】:2012-11-14 18:11:48
【问题描述】:
String[] strarray = new String[dataLine.size()];
strarray = dataLine.toArray(strarray);
PrintWriter pr = new PrintWriter("test.txt");
for (int i=0; i<strarray.length; i++)
{
pr.println(Arrays.toString(strarray));
}
pr.close();
当我为此查看 test.txt 时,与调用相比,它会输出一组我不想要的数据(特别是最后几个)
System.out.println(Arrays.toString(strarray));
知道为什么会发生这种情况以及如何解决这个问题吗?
谢谢!
编辑:
让我举一个更具体的例子。
System.out.println 输出
[1040, 0, 6, 1, 11/12/2012, 3, 0, 0, 1, 12/27/2011, 0, 0]
[1041, 0, 6, 1, 11/13/2012, 3, 0, 0, 1, 12/28/2011, 0, 0]
当 pr.println(Arrays.toString(strarray)) 打印时
[1041, 0, 6, 1, 11/13/2012, 3, 0, 0, 1, 12/28/2011, 0, 0]
[1041, 0, 6, 1, 11/13/2012, 3, 0, 0, 1, 12/28/2011, 0, 0]
和 pr.println(strarray[i]);打印
1041
0
6
1
11/13/2012
3
0
0
1
12/28/2011
0
0
我想要的输出文件是第一个。但是,最后两个没有提供给我。
谢谢!
【问题讨论】:
-
能够看到输出的差异可能是有益的。
-
第一个将输出完整的数组,只要数组长,第二个将输出完整的数组一次。
标签: java parsing printwriter