Java 写入文本文件,但文件内容不可读
我想把数字写进一个文件。程序运行时没有任何错误,但当我打开写入的文件时,文件的内容类似于“!”#$%&'()*+,-./0123456789:@(小标题)(小标题)(小标题)(小标题)(小标题)(小标题)(小标题)(小标题™ŠœœŸ、ŠŠŠŠŠŠŠŠŠŠŠŠŠ、ŠŠŠŠŠŠŠŠŠ 我通过使用FileInputStream读取文件内容并打印内容进行交叉检查。IDE打印所需的输出,但文件中的整数不是以可读形式存储的。 有人能告诉我为什么整数没有按预期填充到文件中吗Java 写入文本文件,但文件内容不可读,java,Java,我想把数字写进一个文件。程序运行时没有任何错误,但当我打开写入的文件时,文件的内容类似于“!”#$%&'()*+,-./0123456789:@(小标题)(小标题)(小标题)(小标题)(小标题)(小标题)(小标题)(小标题™ŠœœŸ、ŠŠŠŠŠŠŠŠŠŠŠŠŠ、ŠŠŠŠŠŠŠŠŠ 我通过使用FileInputStream读取文件内容并打印内容进行交叉检查。IDE打印所需的输出,但文件中的整数不是以可读形式存储的。 有人能告诉我为什么整数没有按预期填充到文件中吗 import java.io.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException{
try{
FileOutputStream fos = new FileOutputStream("Exercise_19.txt");
for(int i = 0;i<=200; i++){
fos.write((int)i);
}
fos.close();
}
catch(IOException ex){
ex.printStackTrace();
}
}
import java.io.*;
公共班机{
公共静态void main(字符串[]args)引发IOException{
试一试{
FileOutputStream fos=新的FileOutputStream(“Exercise_19.txt”);
对于(int i=0;i我不确定为什么要在文件中获取数据,但FileOutputStream
用于写入原始字节的数据,而不是人类可读的文本。尝试改用。我不确定为什么要在文件中获取数据,但FileOutputStream
用于写入原始字节的数据而不是人类可读的文本。尝试改用。fos.write(int)使用整数的最低8位写入字节
如果您想将文本写入文件,一个更简单的选项是使用PrintWriter(注意PrintWriter可以使用FileOutputStream,这样就可以完成,但您必须知道自己在做什么。)
publicstaticvoidmain(String…args)抛出FileNotFoundException{
PrintWriter pw=新的PrintWriter(“练习_19.txt”);
对于(int i=0;ifos),write(int)使用整数的最低8位写入一个字节
如果您想将文本写入文件,一个更简单的选项是使用PrintWriter(注意PrintWriter可以使用FileOutputStream,这样就可以完成,但您必须知道自己在做什么。)
publicstaticvoidmain(String…args)抛出FileNotFoundException{
PrintWriter pw=新的PrintWriter(“练习_19.txt”);
对于(int i=0;iFileOutputStream
类的Write()
方法将以字节格式写入数据。因此,您无法以普通记事本格式读取数据。但是,您可以使用FileInputStream
类读取数据
书写的语法如下所示,看看这个
您可以找到一个完整的写入和读取示例。FileOutputStream
类的Write()
方法将以字节格式写入数据。因此您无法以普通记事本格式读取数据。但是,您可以使用FileInputStream
类读取数据
书写的语法如下所示,看看这个
你可以找到一个完整的书写和阅读示例。输出格式是二进制的。你应该在FileOutputStream
上使用TextWriter
。输出格式是二进制的。你应该在FileOutputStream
上使用TextWriter
。你可以阅读文本编辑器中写的内容。他所做的是pri将前200个ascii字符打印到文件中。您可以读取在文本编辑器中写入的内容。他所做的是将前200个ascii字符打印到文件中。
public static void main(String... args) throws FileNotFoundException {
PrintWriter pw = new PrintWriter("Exercise_19.txt");
for (int i = 0; i <= 200; i++)
pw.println(i);
pw.close();
}
write(int b)
Writes the specified byte to this file output stream.