如何使用 FileOutputStream 在文件中写入一个整数?
How to write an integer in a file using FileOutputStream?
当我想在文件中写入文本时,我将其转换为字节,然后将其保存在字节数组中,然后使用 FileOutputStream 将其发送到文件。
想写整数怎么办??
String filename = "testFile.txt";
OutputStream os = new FileOutputStream(filename);
String someText = "hello";
byte[] textAsByte = someText.getBytes();
os.write(textAsByte);
int number = 20;
byte numberAsByte = number.byteValue();
os.write(numberAsByte);
我正在(你好)
预期结果:Hello20
尝试这样的事情:
public static void main(String[] args) throws IOException {
FileOutputStream fos = null;
byte b = 66;
try {
// create new file output stream
fos = new FileOutputStream("C://test.txt");
// writes byte to the output stream
fos.write(b);
// flushes the content to the underlying stream
fos.flush();
您想将号码的 字符串表示形式 写入文件,因此需要先将其转换为字符串。
int number = 20;
os.write(Integer.toString(number).getBytes());
你不是真的想写整数。您要做的是编写整数的字符串表示形式。因此,您需要将其转换为 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,这样您就不必担心在发生任何意外情况时关闭流。
当我想在文件中写入文本时,我将其转换为字节,然后将其保存在字节数组中,然后使用 FileOutputStream 将其发送到文件。 想写整数怎么办??
String filename = "testFile.txt";
OutputStream os = new FileOutputStream(filename);
String someText = "hello";
byte[] textAsByte = someText.getBytes();
os.write(textAsByte);
int number = 20;
byte numberAsByte = number.byteValue();
os.write(numberAsByte);
我正在(你好) 预期结果:Hello20
尝试这样的事情:
public static void main(String[] args) throws IOException {
FileOutputStream fos = null;
byte b = 66;
try {
// create new file output stream
fos = new FileOutputStream("C://test.txt");
// writes byte to the output stream
fos.write(b);
// flushes the content to the underlying stream
fos.flush();
您想将号码的 字符串表示形式 写入文件,因此需要先将其转换为字符串。
int number = 20;
os.write(Integer.toString(number).getBytes());
你不是真的想写整数。您要做的是编写整数的字符串表示形式。因此,您需要将其转换为 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,这样您就不必担心在发生任何意外情况时关闭流。