zoukankan      html  css  js  c++  java
  • java读写文件大全

    使用Java操作文本文件的方法具体解释
    摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类
    最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中 write(char[] ch,int off,int
    length),flush()和close()方法为抽象方法,Reader中read(char[] ch,int off,int length)和close()方法是抽象方法。子类应该分别实现他们。
      当我们读写文本文件的时候,採用Reader是很方便的,比方FileReader,InputStreamReader和BufferedReader。当中最重要的类是InputStreamReader,
    它是字节转换为字符的桥梁。你能够在构造器重指定编码的方式,假设不指定的话将採用底层操作系统的默认编码方式,比如GBK等。当使用FileReader读取文件
    的时候。

    当中read()方法返回的是读取得下个字符。当然你也能够使用read(char[] ch,int off,int length)这和处理二进制文件的时候相似,不多说了。假设使用
    InputStreamReader来读取文件的时候
    while((ch = isr.read())!=-1)
    {
    System.out.print((char)ch);
    }
    这和FileReader并没有什么差别,其实在FileReader中的方法都是从InputStreamReader中继承过来的。read()方法是比較好费时间的,假设为了提高效率
    我们能够使用BufferedReader对Reader进行包装,这样能够提高读取得速度,我们能够一行一行的读取文本,使用readLine()方法。
    BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("ming.txt")));
    String data = null;
    while((data = br.readLine())!=null)
    {
    System.out.println(data);
    }
    当你明确了怎样用Reader来读取文本文件的时候那么用Writer写文件相同很easy。有一点须要注意,当你写文件的时候,为了提高效率,写入的数据会先
    放入缓冲区,然后写入文件。因此有时候你须要主动调用flush()方法。与上面相应的写文件的方法为:

    不要忘记用完后关闭流!以下是个小样例,帮助新手理解。事实上有的时候java的IO系统是须要我们多记记的,不然哪天就生疏了。

    java中多种方式读文件
    一、多种方式读文件内容。
    1、按字节读取文件内容
    2、按字符读取文件内容
    3、按行读取文件内容
    4、随机读取文件内容


  • 相关阅读:
    database homework1
    数据库基础
    MySQL操作
    [BZOJ 1305][CQOI2009]dance跳舞(网络流+二分答案)
    [BZOJ 1834][ZJOI2010]network 网络扩容(费用流)
    [BZOJ 3931][CQOI2015]网络吞吐量(SPFA+网络流)
    [BZOJ 3576][Hnoi2014]江南乐(博弈论)
    [BZOJ 1086][SCOI2005]王室联邦(贪心?树分块)
    [BZOJ 4765]普通计算姬(分块+树状数组)
    [BZOJ 4802]欧拉函数(Pollard_rho+Miller_Rabin)
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4296445.html
Copyright © 2011-2022 走看看