我有一个文本文件,其中包含一些印地语字符和ISO 8859-1中的默认字符编码.我使用"FileInputStream"来读取该文件中的数据,使用"FileOutputStream"将数据写入另一个文本文件.
我的代码是:
FileInputStream fis = new FileInputStream("D:/input.txt");
int i = -1;
FileOutputStream fos = new FileOutputStream("D:/outputNew.txt");
while((i = fis.read())!= -1){
fos.write(i);
}
fos.flush();
fos.close();
fis.close();
Run Code Online (Sandbox Code Playgroud)
我没有在任何地方指定编码("UTF-8"),但仍然在输出文件中有正确的文本.如何发生,我没有得到?
它的工作原理是因为你的程序中没有使用任何字符.您只是将原始字节从一个文件传输到另一个文件.如果您读取和写入字符将是一个问题,因为那时将使用编码将文件中的字节转换为字符,反之亦然.
| 归档时间: |
|
| 查看次数: |
164 次 |
| 最近记录: |