我正在学习 java io 概念,我需要澄清一个疑问。
我正在尝试使用像 BufferedReader 这样的阅读器读取文件,并将其写入像 BufferedOutputstream 这样的 OutputStream。这是我的代码示例。
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
public class ReaderToStream
{
public static void main(String[] args)throws Exception
{
BufferedReader br = new BufferedReader(new FileReader(new File("f1.txt")));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File("f2.txt")));
int ch = 0;
while((ch=br.read())!=-1)
{
bos.write(ch);
}
bos.close();
br.close();
}
}
我知道阅读器读取字符,输出流写入字节,但是我们如何才能完美地处理它,因为当我的文件有正常的英文字符时,没有问题,但是当我有符号或其他语言字符时(例如காலை வணக்கம்,早上好)它将文本复制到一些随机文本(如æ©ä`好)。
谁能帮助我深入了解这些主题?
感谢您的帮助,如果被问到任何愚蠢的问题,我们深表歉意。