字节流练习文件复制、使用字节流读取中文的问题
字节流练习文件复制
文件复制的原理:
图解:
明确:
数据源:F://aa.txt
数据的目的地:F://cc.txt
文件复制的步骤:
1,创建一个字节输入流对象,构造方法中要绑定的数据源
2,创建一个字节输入流对象,构造方法中绑定要写入的目的地
3,使用字节输出流对象中的read方法进行读取
4,使用字节输入流对象中writer方法进行写入
5,释放资源
案例:
public class Kaopei {
/**
* 文件复制的步骤:
* <p>
* 1,创建一个字节输入流对象,构造方法中要绑定的数据源
* <p>
* 2,创建一个字节输出流对象,构造方法中绑定要写入的目的地
* 3,使用字节输出流对象中的read方法进行读取
* <p>
* 4,使用字节输入流对象中writer方法进行写入
* <p>
* 5,释放资源
*
* @param args
*/
public static void main(String[] args) throws IOException {
// ,创建一个字节输入流对象,构造方法中要绑定的数据源
FileInputStream is = new FileInputStream("F://aa.txt");
// 2,创建一个字节输出流对象,构造方法中绑定要写入的目的地
FileOutputStream os = new FileOutputStream("F://cc.txt");
int len = 0;
// 3,使用字节输出流对象中的read方法进行读取
while ((len = is.read()) != -1) {
// 4,使用字节输入流对象中writer方法进行写入
os.write(len);
}
// 5,释放资源
is.close();
os.close();
}
}
看运行结果:
考培成功
使用字节流读取中文的问题
我们来看一下小测试:
public class FIlezijie {
public static void main(String[] args) throws IOException {
FileInputStream is = new FileInputStream("aa.txt");
int len =0;
while ((len=is.read())!=-1){
System.out.println(len);
}
is.close();
}
}
我们在当前文件下创建了一个文本文件,内容写的是 你好
然后我们使用字节读取 获取他
运行结果:
那么我们给转换成Char类型的试试
乱码的方法展现出来