java从文件中读取数据的六种方法

yizhihongxing

Java从文件中读取数据的六种方法

在Java应用程序中,从文件中读取数据是一个常见的操作。这篇文章将为大家介绍Java读取文件的六种方法,帮助大家学习如何读取文件数据。

方法1:使用 FileInputStream

FileInputStream fileInputStream = null;
try {
    File file = new File("file.txt");
    fileInputStream = new FileInputStream(file);
    int content;
    while ((content = fileInputStream.read()) != -1) {
        System.out.print((char) content);
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (fileInputStream != null) {
            fileInputStream.close();
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}

方法2:使用 BufferedReader 和 FileReader

BufferedReader bufferedReader = null;
try {
    File file = new File("file.txt");
    FileReader fileReader = new FileReader(file);
    bufferedReader = new BufferedReader(fileReader);
    String line;
    while ((line = bufferedReader.readLine()) != null) {
        System.out.println(line);
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (bufferedReader != null) {
            bufferedReader.close();
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}

方法3:使用 RandomAccessFile

RandomAccessFile randomAccessFile = null;
try {
    randomAccessFile = new RandomAccessFile("file.txt", "r");
    String line = null;
    while ((line = randomAccessFile.readLine()) != null) {
        System.out.println(line);
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (randomAccessFile != null) {
            randomAccessFile.close();
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}

方法4:使用 Scanner

Scanner scanner = null;
try {
    scanner = new Scanner(new File("file.txt"));
    while (scanner.hasNext()) {
        System.out.println(scanner.nextLine());
    }
} catch (FileNotFoundException e) {
    e.printStackTrace();
} finally {
    if (scanner != null) {
        scanner.close();
    }
}

方法5:使用 Files 类的 readAllBytes 方法

try {
    byte[] bytes = Files.readAllBytes(Paths.get("file.txt"));
    System.out.println(new String(bytes));
} catch (IOException e) {
    e.printStackTrace();
}

方法6:使用 Files 类的 readAllLines 方法

try {
    List<String> lines = Files.readAllLines(Paths.get("file.txt"));
    for (String line : lines) {
        System.out.println(line);
    }
} catch (IOException e) {
    e.printStackTrace();
}

以上就是Java从文件中读取数据的六种方法,我们可以根据需求选择方法进行文件读取。

下面是一个使用BufferedReader的示例:

public static void main(String[] args) {
    BufferedReader bufferedReader = null;
    try {
        File file = new File("file.txt");
        FileReader fileReader = new FileReader(file);
        bufferedReader = new BufferedReader(fileReader);
        String line;
        while ((line = bufferedReader.readLine()) != null) {
            System.out.println(line);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            if (bufferedReader != null) {
                bufferedReader.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

下面是一个使用Scanner的示例:

public static void main(String[] args) {
    Scanner scanner = null;
    try {
        scanner = new Scanner(new File("file.txt"));
        while (scanner.hasNext()) {
            System.out.println(scanner.nextLine());
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } finally {
        if (scanner != null) {
            scanner.close();
        }
    }
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java从文件中读取数据的六种方法 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java实战之实现在线小说阅读系统

    Java实战之实现在线小说阅读系统攻略 项目简介 本项目是一个在线小说阅读系统,可以实现用户注册登录、搜索小说、在线阅读等功能。该项目使用 Java 语言作为主要开发语言,并使用 Maven 进行项目构建和管理,使用 Spring Boot 框架搭建后端服务,使用 Thymeleaf 模板引擎进行页面渲染,使用 Bootstrap 框架进行前端页面布局。 开…

    Java 2023年5月19日
    00
  • Java GUI实现学生成绩管理系统

    作为Java GUI实现学生成绩管理系统的作者,以下是详细的攻略: 1. 学习Java GUI 首先需要熟悉Java GUI相关的知识,包括Swing和AWT等基础知识。可以通过在线课程、教程和书籍等途径来学习。 2. 设计学生成绩管理系统 在学习了Java GUI基础知识之后,开始设计学生成绩管理系统。首先需要确定系统的功能和界面设计,包括成绩录入、成绩查…

    Java 2023年5月24日
    00
  • Android 中cookie的处理详解

    Android 中cookie的处理详解 什么是cookie 在讲解 Android 中cookie的处理之前,先介绍一下什么是cookie。Cookie是服务器发送到用户浏览器并保存在本地的一小块数据,浏览器在之后访问同一服务器时会在请求头中带上这些数据。通常,它用于判断用户是否已经登录网站、跟踪用户操作等。在 Android 开发中,cookie的处理是…

    Java 2023年6月16日
    00
  • 在CentOS 6.3中安装与配置Tomcat-7方法

    以下是“在CentOS 6.3中安装与配置Tomcat-7方法”的完整攻略: 安装Java 首先,从官网下载Java安装包。在本示例中,我们将操作JDK 8版本: wget –no-check-certificate –no-cookies –header "Cookie: oraclelicense=accept-securebackup-…

    Java 2023年5月19日
    00
  • JDK8 中Arrays.sort() 排序方法详解

    JDK8 中 Arrays.sort() 排序方法详解 简介 Arrays.sort() 是 Java 中用于对数组进行排序的方法之一。该方法可用于对数字数组进行快速排序,也可用于对字符串数组进行字典序排序等。本文将详细讲解 JDK8 中 Arrays.sort() 排序方法的使用,包括参数、返回值、排序算法等。 方法参数 Arrays.sort() 方法有…

    Java 2023年5月26日
    00
  • Java反射机制实例代码分享

    Java反射机制实例代码分享攻略 简介 Java反射机制是指在运行时,对于任意一个类,都能够知道这个类的所有属性和方法,对于这些属性或方法可以进行操作;这种动态获取的能力称之为反射机制。 Java反射机制可以让我们在运行时动态地创建对象、访问对象属性、调用对象方法或获取类信息,甚至可以操作私有属性和方法。反射机制的使用非常方便灵活,但也增加了代码的复杂程度,…

    Java 2023年5月23日
    00
  • vue之proxyTable代理超全面配置流程

    我将为您详细讲解关于“Vue之proxyTable代理超全面配置流程”的完整攻略。 什么是 proxyTable 在 Vue.js 开发中,我们经常需要请求第三方 API 或者后端服务器进行数据交互,但是在本地开发环境中处理跨域问题是一个讨厌的事情。为了避免跨域问题,我们通常会采用在前端页面中调用 API 的方法,而这种方式有一个技巧,那就是通过反向代理,将…

    Java 2023年6月16日
    00
  • 如何在JAVA中使用Synchronized

    当多个线程尝试访问共享资源时,会造成数据竞争的问题,导致程序出现意想不到的结果。Java的Synchronized关键字可以协调多个线程之间对共享资源的访问,保证线程的安全性。下面是如何使用Synchronized关键字的攻略。 为什么需要使用Synchronized 当多个线程同时访问共享资源时,由于竞争条件的存在,可能会导致数据的不一致和计算结果的错误,…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部