• 技术文章 >Java >java教程

    java怎么读取文件?

    青灯夜游青灯夜游2019-11-18 13:14:53原创4856

    java中可以使用两个类来读取文件:BufferedReader和BufferedInputStream。

    1、使用 BufferedReader

    在下面的实例中,我们将看到两种使用 BufferedReader 来读取文件的方法。

    在这里, 我有两个 txt 文件myfile1.txt和myfile2.txt。以演示读取文件的方法。

    我使用readLine()方法读取第一个文件。使用read()方法读取第二个文件。

    方法1:使用BufferedReader类的readLine ()方法

    public String readLine() throws IOException

    它读取一行文本。

    1.png

    方法2:使用read ()方法

    public int read() throws IOException

    它读取文本的字符。因为它返回一个整数值, 所以需要将它显式转换为char类型。

    2.png

    2、使用 BufferedInputStream

    java中使用FileInputStream和BufferedInputStream读取文件的步骤如下:

    1) 通过文件的完整路径来创建文件实例。

    2) 将文件实例传递给FileInputStream , 它打开与实际文件的连接, 该文件由文件系统中的文件对象文件命名。

    3) 将FileInputStream实例传递给BufferedInputStream , 它创建BufferedInputStream并将其参数保存在其中, 以便后面使用。

    在 buf 中创建一个内部缓冲区数组。

    4) 使用while循环读取文件, available() 方法检查是否已经读到了文件末尾. 在while中使用 FileInputStream的read函数来读取文件内容

    完整代码示例如下

    import java.io.*;
    public class ReadFileDemo {
       public static void main(String[] args) {         
          //读取c盘的file1文件
          File file = new File("C://file1.txt");
          BufferedInputStream bis = null;
          FileInputStream  fis= null;
    
          try
          {
              //第一步 通过文件路径来创建文件实例
              fis = new FileInputStream(file);
    
              /*把FileInputStream实例 传递到 BufferedInputStream
                目的是能快速读取文件
               */
              bis = new BufferedInputStream(fis);
    
              /*available检查是不是读到了文件末尾 */
              while( bis.available() > 0 ){                 
                  System.out.print((char)bis.read());
              }
    
           }catch(FileNotFoundException fnfe)
            {
                System.out.println("文件不存在" + fnfe);
            }
            catch(IOException ioe)
            {
                System.out.println("I/O 错误: " + ioe); 
            }
            finally
            {
                try{
                   if(bis != null && fis!=null)
                   {
                         fis.close();
                      bis.close();
                   }      
                 }catch(IOException ioe)
                  {
                      System.out.println("关闭InputStream句柄错误: " + ioe);
                  }         
            }
       }    
    }

    3.png

    读取中文

    建议使用readline而不是read来读取,因为中文read读取转换后会变成乱码。

    4.png

    php中文网,大量的免费Java入门教程,欢迎在线学习!

    以上就是java怎么读取文件?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java
    上一篇:java中this是什么意思? 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • java程序运行的三个步骤• java中栈和队列的区别是什么?• java与javaEE的区别• java jdk在哪
    1/1

    PHP中文网