Java——简单的文件读取和写入

news/2024/12/29 15:33:24/

 这段代码是一个简单的文件读取和写入的例子。它创建了一个BufferFile类,构造方法接受一个文件名作为参数。
BufferFile类中的write方法用于从标准输入读取内容,并将其写入到指定的文件中,直到输入"end"为止。
read方法用于读取指定文件中的内容,然后逐行打印出来。
main方法中,创建一个BufferFile对象,并调用其writeread方法进行文件读写操作。

 

package ch6;
import java.io.*;
public class 例84
{public static void main(String[] args){// TODO Auto-generated method stubBufferFile bf=new BufferFile("input.txt");try {bf.write();bf.read();}catch (IOException ex) {ex.printStackTrace();}}
}
class BufferFile{private String filename;public BufferFile(String filename) {this.filename=filename;}public void write() throws IOException{BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));BufferedWriter writer=new BufferedWriter(new FileWriter(filename));String line;while (!(line=reader.readLine()).equals("end")) {writer.write(line);writer.newLine();}writer.flush();reader.close();writer.close();}public void read() throws IOException{BufferedReader reader=new BufferedReader(new FileReader(filename));System.out.println("文件名:"+this.filename);String line;while ((line=reader.readLine())!=null) {System.out.println(line);}reader.close();}
}

这是一个Java程序,它实现了一个简单的文件读写功能。程序的基本流程如下:

  1. 程序的导入部分:

    package ch6;
    import java.io.*;
    

    这部分代码指定了程序所属的包,并导入了java.io和java.io.BufferedReader类,用于处理输入输出操作。

  2. 主类的定义部分:

    public class 例84 {
    

    这部分代码定义了一个名为"例84"的公共类,该类包含了程序的主方法和其他成员方法。

  3. 主方法的定义部分:

    public static void main(String[] args) {
    

    这部分代码定义了一个名为"main"的公共静态方法,作为程序的入口点。

  4. 对象创建部分:

    BufferFile bf = new BufferFile("input.txt");
    

    这部分代码创建了一个BufferFile对象bf,传入了一个名为"input.txt"的文件名作为参数。

  5. 文件写入部分:

    bf.write();
    

    这部分代码调用BufferFile对象bf的write()方法,实现将用户从控制台输入的内容写入到名为"input.txt"的文件中。

  6. 文件读取部分:

    bf.read();
    

    这部分代码调用BufferFile对象bf的read()方法,实现从名为"input.txt"的文件中读取内容并在控制台打印输出。

  7. BufferFile类定义部分:

    class BufferFile {// 类定义的其他成员变量和方法public BufferFile(String filename) {// 构造方法的实现}public void write() throws IOException {// write()方法的实现}public void read() throws IOException {// read()方法的实现}
    }
    

    这部分代码定义了一个名为BufferFile的类,该类包含了一个构造方法和两个方法:write()和read()。构造方法用于接受并设置文件名,write()方法用于将用户输入的内容写入文件,read()方法用于从文件中读取内容并打印输出。

请注意,程序中涉及到文件的读写操作,对应的类为BufferedReader、InputStreamReader、BufferedWriter、FileWriter、FileReader。在写入文件时,用户可以逐行输入内容,输入"end"表示结束输入。


http://www.ppmy.cn/news/1061579.html

相关文章

《Python基础教程》专栏总结篇

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。…

最新Burp Suite插件详解

点击星标,即时接收最新推文 本文选自《web安全攻防渗透测试实战指南(第2版)》 点击图片五折购书 Burp Suite中的插件 Burp Suite中存在多个插件,通过这些插件可以更方便地进行安全测试。插件可以在“BApp Store”(“Ex…

树模型与集成学习:LightGBM

目录 树模型与集成学习 LightGBM 的贡献 LightGBM 的贡献:单边梯度抽样算法 LightGBM 的贡献:直方图算法 LightGBM 的贡献:互斥特征捆绑算法 LightGBM 的贡献:深度限制的 Leaf-wise 算法 树模型与集成学习 树模型是非常好的…

Unity 之 transform.rotate() 实现旋转

文章目录 详细介绍默认情况下,以局部坐标 详细介绍 在Unity中,Transform.Rotate() 是一个用于在物体上进行旋转的函数。它可以用来在局部坐标系下对物体进行旋转,也可以在世界坐标系下进行旋转。下面是关于 Transform.Rotate() 的详细介绍&a…

axios 二次封装

axios 二次封装 基本上每一个项目开发,都必须要二次封装 axios。主要是为了减少重复性工作,不可能每一次发起新请求时,都要重新配置请求域名、请求头 Content-Type、Token 等信息。所以需要把公用的部分都封装成一个函数,每次调用…

虚拟新世界:VR、AR及AI如何塑造我们的未来

虚拟新世界:VR、AR及AI如何塑造我们的未来 目录 引言:未来技术的前沿VR、AR与AI的定义和区别VR、AR与AI能为人类带来什么VR、AR、AI在可预期的时间内的落地可能性对未来的影响结语:技术的可能与责任 1. 引言:未来技术的前沿 在…

Python如何进行基本的数学运算

Python进行基本的数学运算 Python是一门功能强大且易于学习的编程语言,它不仅可以用于开发应用程序,还可以用于执行各种数学运算。让我们一起来看看如何在Python中进行基本的数学运算。 加法、减法、乘法和除法 Python支持常见的加法、减法、乘法和除…

Django基础4——模板系统

文章目录 一、基本了解1.1 引用变量1.2 全局变量 二、if判断2.1 语法2.2 案例 三、for循环3.1 语法3.2 案例3.3 forloop变量3.4 容错语句 四、过滤器4.1 内置过滤器4.2 自定义过滤器 五、模板继承六、模板导入七、引用静态文件 一、基本了解 概念: Django模板系统&a…