我有一个使用该System.out.format()
方法格式化的字符串,我执行以下操作:
System.out.format("I = %3d var = %9.6f", i, myVar);
但是当我尝试将此格式化的字符串写入文件时,我只会得到类似"java.io.PrintStream@84fc8d"
的东西。
在查看文档后了解到,这种方法有点像System.out.print()
,只是返回一个 PrintStream 来显示(例如在控制台中),所以我尝试用.toString
or转换它,String.valueOf()
但我得到了相同的结果。
所以我想知道是否有一种方法可以像String.out.format()
方法一样格式化字符串,但是可以在文件中写入?
这是我使用的大致代码(只是使有用的部分出现)
WRITE_MY_LINE(System.out.format(" I = %3d var = %9.6f", i, myVar).toString());
//also tried this :
WRITE_MY_LINE(String.valueOf(System.out.format(" I = %3d var = %9.6f", i, myVar)));
public static void WRITE_MY_LINE(String line) {
buff_out = new BufferedWriter(new FileWriter(ascii_path, true));
buff_out.append(line);
buff_out.newLine();
buff_out.flush();
}