Вы на самом деле не хотите писать целое число.Что вы хотите сделать, это написать строковое представление целого числа.Поэтому вам нужно преобразовать его в String
, что вы легко можете сделать с String.valueOf()
, чтобы 20
стало "20"
os.write(String.valueOf(number).getBytes())
Если файл представляет собой текстовый файл, вы можете использоватьWriter
вместо OutputStream
, что означает, что вам не нужно беспокоиться о байтах.
String filename = "testFile.txt";
try (BufferedWriter out = new BufferedWriter(new FileWriter(filename))) {
out.write("hello");
out.write(String.valueOf(20));
}
Также используйте try-with-resource, чтобы обернуть ваш OutputStream или Writer, чтобы вы ненужно беспокоиться о закрытии потока, если произойдет что-то неожиданное.