字节流和字符流

字节输出流OutputStream

 

FileOutputStream

构造方法在文件不存在时会自动创建文件,文件存在则覆盖

FileOutputStream fos=new FileOutputStream("D:\\text\\s.txt");

 

write();向文件中写入一个字节,走阿斯科码表

write(byte[]);写入数组

write(byte[],a,b);写入指定数组,从哪开始 写入几个

\r\n  :换行

列:

         write(“\r\n哈哈哈”.getBytes);先换行,字符串转byte数组后存入

FileOutputStream("D:\\text\\s.txt",true);重载方法,第二个参数为true代表续写

 

 

 

字节输入流InputStream

FileInputStream

 

read();读一个字节,返回值为int

当读不到时会返回一个-1

read(byte[] );读取一个字节数组

FileInputStream fis=new FileInputStream("D:\\text\\s.txt");

byte[] bytes=new byte[2];

int len=fis.read(bytes);

System.out.println(len);//IO读取的有效长度,没有时返回-1

System.out.println(new String(bytes));

 

循环读取:

int len=0;

    while((len=fis.read(bytes))!=-1){

       System.out.println(new String(bytes,0,len));

    }

 

复制文件:

       //明确数据源

       FileInputStream fis=new FileInputStream("D:\\text\\s.txt");

       //明确目的地

       FileOutputStream fos=new FileOutputStream("D:\\text\\e.txt");

       //开始复制

       int len=0;

       while((len=fis.read())!=-1){

           fos.write(len);

       }

       //释放资源

       fis.close();

       fos.close();

 

 

字符流:

字符输入流

FileReader读取包含中文的文件

 

字符输出流

FileWriter 写入中文到文件

 

close() 先刷新 然后关闭此流

flush()  刷新

posted @ 2019-03-31 18:54  fdbnf  阅读(161)  评论(0编辑  收藏  举报