zoukankan      html  css  js  c++  java
  • 69期-Java SE-021-IO流-2-001-002

    Writer 常用方法
    
    ```java
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.Writer;
    
    public class Test {
        public static void main(String[] args) {
            File file = new File("/Users/southwind/Desktop/test.txt");
            try {
                Writer writer = new FileWriter(file);
    //            writer.write(20320);
    //            writer.write(22909);
    //            writer.write("你好");
    //            char[] chars = {'你','好','世','界'};
    //            writer.write(chars,2,2);
                writer.write("你好HelloWorld", 2, 2);
                writer.flush();
                writer.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
        }
    }
    ```
    
    
    
    ### 处理流
    
    FileReader 继承自 InputStreamReader,即输入转换流,通过这个类可以将字节流转为字符流,字节是基本单位,相当于基础管道,同理,FileWriter 继承自 OutputStreamWriter。
    
    InputStreamReader 和 OutputStreamWriter 分别是 Reader 和 Writer 的子类。
    
    ```java
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    
    public class Test2 {
        public static void main(String[] args) {
            try {
                //基础的字节输入流
                InputStream inputStream = new FileInputStream("/Users/southwind/Desktop/test.txt");
                //添加处理流
                InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
                char[] chars = new char[1024];
                int length = inputStreamReader.read(chars);
                System.out.println(chars);
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    ```
    
    
    
    ```java
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.io.Writer;
    
    public class Test3 {
        public static void main(String[] args) {
            String str = "你好 世界 Hello World";
            File file = new File("/Users/southwind/Desktop/test2.txt");
            try {
                OutputStream outputStream = new FileOutputStream(file);
                OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream);
                Writer writer = outputStreamWriter;
                writer.write(str);
                writer.flush();
                writer.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    ```
    
    
    
    ### 缓冲流
    
    输入缓冲流
    
    字节输入缓冲流:BufferedInputStream
    
    ```java
    import java.io.BufferedInputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStream;
    
    public class Test4 {
        public static void main(String[] args) {
            File file = new File("/Users/southwind/Desktop/test.txt");
            InputStream inputStream;
            try {
                inputStream = new FileInputStream(file);
                BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream);
    //            int temp = 0;
    //            while((temp = bufferedInputStream.read())!=-1) {
    //                System.out.println(temp);
    //            }
                byte[] bytes = new byte[1024];
                int length = bufferedInputStream.read(bytes,10,10);
                for(byte byt:bytes) {
                    System.out.println(byt);
                }
                bufferedInputStream.close();
                inputStream.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    ```
    
    
    
    字符输入缓冲流 BufferedReader
    
    ```java
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.Reader;
    
    public class Test5 {
        public static void main(String[] args) {
            File file = new File("/Users/southwind/Desktop/test.txt");
            try {
                Reader reader = new FileReader(file);
                BufferedReader bufferedReader = new BufferedReader(reader);
    //            String str = "";
    //            while((str = bufferedReader.readLine())!=null) {
    //                System.out.println(str);
    //            }
    //            int temp = 0;
    //            while((temp = bufferedReader.read())!=-1) {
    //                System.out.println(temp);
    //            }
                char[] chars = new char[1024];
                int length = bufferedReader.read(chars,10,10);
                for(char cha:chars) {
                    System.out.println(cha);
                }
                bufferedReader.close();
                reader.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    ```
    
    
    
    输出缓冲流
    
    字节输出缓冲流 BufferedOutputStream
    
    ```java
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.OutputStream;
    
    public class Test6 {
        public static void main(String[] args) {
            File file = new File("/Users/southwind/Desktop/test2.txt");
            try {
                OutputStream outputStream = new FileOutputStream(file);
                BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(outputStream);
                String str = "20世纪90年代,硬件领域出现了单片式计算机系统,这种价格低廉的系统一出现就立即引起了自动控制领域人员的注意,因为使用它可以大幅度提升消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。";
                byte[] bytes = str.getBytes();
                bufferedOutputStream.write(bytes,10,10);
                bufferedOutputStream.flush();
                bufferedOutputStream.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
        }
    }
    ```
  • 相关阅读:
    单点登录cas常见问题(八)
    11G新特性 -- variable size extents
    11G新特性 -- ASM Fast Mirror Resync
    redhat 6.4 安装VirtualBox自动增强功能功:unable to find the sources of your current Linux kernel
    LINUX使用DVD光盘或者ISO作为本地YUM源
    数据库报ORA-00600: 内部错误代码, 参数: [17059],并产生大量trace日志文件
    Putty设置删除
    ssh/scp 远程连接ssh非默认端口方法
    查看LINUX版本
    RHCE7 -- systemctl命令
  • 原文地址:https://www.cnblogs.com/HiJackykun/p/11173195.html
Copyright © 2011-2022 走看看