第十周课程总结

一·使用File类操作文件。
其主要操作操作包括文件的创建,文件的删除,对文件的修改(主要体现在对文件代码的修改)
实现字节流,字符流在Java.IO的具体操作
No.1通过File类创建一个文件 。
No.2通过字节流,字符流的子类指定到所需位置。
No.3对文本文档进行读写操作。
No.4关闭输入输出。

二·文件复制的常用两种方法:
.IO流复制文件第一种方法

public class copy {

public static void main(String[] args) throws IOException {
    
    //数据源
     FileInputStream fis = new FileInputStream(
                        new File("D:\erweima.png"));
     //目的地
     FileOutputStream fos = new FileOutputStream(
                          new File("erweima.png")); 
     
     int by = 0;
     
     while((by=fis.read())!=-1){
         fos.write(by);
     }
     
     //释放资源
     fis.close();
     fos.close();
}

}

IO流复制文件第二种方法

public class copy2 {

public static void main(String[] args) throws IOException {
    //数据源
    FileInputStream fis = new FileInputStream(
            new File("D:\erweima.png"));
    //目的地
    FileOutputStream fos = new FileOutputStream(
            new File("D:\JE\erweima.png"));
    
    byte[] bs = new byte[1024];
    while(fis.read(bs)!=-1){
        fos.write(bs);
    }
    //释放资源
    fis.close();
    fos.close();
}

}

三·关于字节流和字符流:

字节流主要操作的是byte类型数据,以byte数组为准

IO分两种流
字节流 InputStream OutputStream
字符流 Reader Writer
他们都是抽象类
具体实现
字节流 FileInputStream FileOutputStream
字符流 FileReader FileWriter
字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的,所以它对多国语言支持性比较好!如果是音频文件、图片、歌曲,就用字节流好点,如果是关系到中文(文本)的,用字符流好点.

字节流与字符流的区别:
1.字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串;
2. 字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以

转换流:
字节流与字符流的转换:字节流转换成字符流可以用 InputSteamReader OutputStreamWriter,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节,将字符串按照指定的编码表转成字节,在使用字节流将这些字节写出去。
管道流
PipedOutputStream和PipedInputStream分别是管道输出流和管道输入流。这个两个流必须同时使用,缺一不可

原文地址:https://www.cnblogs.com/Vennien/p/11783615.html