2015-06-03 58 views
0

我想将我的ArrayList保存在txt文件中,所以我使用PrintWriter。它就像一张桌子,所以我使用了String.format方法。在控制台上写入数据时,它是完美的。但是当写在txt文件上时,它是不同的。为什么在txt文件上写入与控制台不同?

为什么在从控制台写入txt文件时会有所不同。请看下面的图片?

different txt output

+2

请包含您正在使用的代码。 – Toby

+0

你不能在这里添加你的图像吗?我看不到任何图像通过点击您的链接.... – Ben

+0

我嵌入图像+添加格式到您的问题+一些语法更正。如果我的更改不合理,请让我知道。 – bvdb

回答

0

这是因为标签(\t)您使用的可能。显然,记事本显示标签的方式与控制台不同。您可以使用String.format进行一些格式设置,而不是自己添加标签,只需检查the JavaDoc即可。

的解决方案见this question,例如:

String.format("%s, %s, %-20s%n", firstName, lastName, phoneNumber) 

编辑 附加提示:您可以添加%N在格式字符串来获得特定于平台的换行符(由在上面的例子)。

+0

当我比较图像时,它看起来像一个问题,**新行**'\ r','\ n' ...只是说... – Ben

+0

我认为你错了。第一张屏幕截图显示了编号的控制台线,用一行空白分隔。第二个显示记事本,使用FUBAR格式。 –

相关问题