Файловая машина не вставляет целочисленные значения времени выполнения в файл?
Я попытался добавить целочисленные значения в файл *.txt
, но вместо этого он печатает значения ASCII.
Что не так с моим кодом?
public static void main(String[] args) throws IOException
{
FileWriter f1 = new FileWriter("C:\/New folder\/file1.txt");
Writer bw1=new BufferedWriter(f1);
int j=0;
while(j!=20)
{
j=j+1;
bw1.write(j);
bw1.write(System.getProperty( "line.separator" ));
bw1.flush();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
f1.close();
}
1 ответ:
Вы используете метод в классе
Writer
, который принимаетint
в качестве аргумента , причем нижние 16 битint
представляют точку кода Unicode, а соответствующий символ печатается в файл, как показано в этой таблице:Простым решением было бы вместо этого записать строки в файл:
bw1.write(String.valueOf(j));