zoukankan      html  css  js  c++  java
  • java学习笔记 字符流Reader与Writer

    Writer类与Reader类是以字符流传输数据,一个字符是两个字节

    字符流除了是以字符方式(两个字节)传输数据外,另外一点与字节流不同的是字符流使用缓冲区,通过缓冲区再对文件进行操作。字节流字节对文件进行操作。使用字符流类时关闭字符流会强制将字符流缓冲区的类容输出,如果不想关闭也将字符流进行输出,使用Writer类的flush()方法。

    字符流的输出与输入操作

    import java.io.File;
    import java.io.IOException;
    import java.io.Writer;
    import java.io.FileWriter;
    import java.io.Reader;
    import java.io.FileReader;
    
    public class Test {
        public static void main(String[] args) {
            try{
                            //使用Writer类可以直接输出字符串            
                FileWriter out = new FileWriter("e:\java\io.txt");
                String str = "你好世界Hello Word!";
                String str1 = "你好世界Hello Word!!";
                out.write(str); 
                out.write("
    " + str1);//为什么out.write("
     + str1")不能实现转行?
                out.close();     
            }catch(IOException e) {
                e.printStackTrace();
            }
            try{  
                  //在文件后追加写入一个字符串         
                Writer out = new FileWriter("e:\java\io.txt",true);
                String str = "
    你好世界Hello Word!!!";
                out.write(str); 
                out.close(); 
                Reader in = new FileReader("e:\java\io.txt");
                int b;
                while ((b = in.read()) != -1) {
                    System.out.print((char)b);//字符流传输数据是两个直接,中文可以正确显示出来。    
                }
                in.close();    
            }catch(IOException e) {
                e.printStackTrace();
            } 
        }    
    }

    r1

    缓存区的操作

    import java.io.File;
    import java.io.IOException;
    import java.io.Writer;
    import java.io.FileWriter;
    import java.io.FileOutputStream;
    
    public class Test {
        public static void main(String[] args) {
            try{
                        String str = "e:\java\bbb.txt";
                        File f = new File(str);
                        FileWriter out = new FileWriter(f);
                        out.write("Hello Word!");
                        out.flush();//将缓存区输出
                        out.close();     
            }catch(IOException e) {
                e.printStackTrace();
            }
        }    
    }
  • 相关阅读:
    windchill系统安装大概步骤
    Javase、Javaee、Javame的区别
    Cocoa Touch事件处理流程--响应者链
    iOS KVC & KVO
    GET异步 请求图片步骤
    iOS7——图像资源Images Assets
    IOS编程教程(八):在你的应用程序添加启动画面
    Objective C内存管理之理解autorelease------面试题
    runtime 运行时机制 完全解读
    图片的异步下载
  • 原文地址:https://www.cnblogs.com/yhwsy/p/5751371.html
Copyright © 2011-2022 走看看