java超好用的文本文件读写方法

在浏览了无数java文件读写的方法之后,我终于总结出来了两个超实用的读写方法~

话不多说,上干货!!!

------------------------------------------------------------------------------------------------------------------------------

一、文本文件的读取方法

void read() throws FileNotFoundException {
        File file = new File("registrationReview.txt");//文件名
        Scanner input = new Scanner(file);
        while (input.hasNext()){
            String s1 = input.next();
            String s2 = input.next();
            String s3 = input.next();
            String s4 = input.next();
            String s5 = input.next();
            Main.registReviews.add(new RegistReview(s1,s2, s3, s4, s5));
        }
        input.close();
    }

注:Main.registReviews是ArrayList<registReviews> 的名字,定义方式为:

ArrayList<registReview> registReviews = new ArrayList<>();

其中registReview 是一个自定义类

二、文本文件的写入方法

void write(ArrayList<RegistReview> objects, String txt){
        File f1 = new File(txt);
        PrintWriter output = null;
        try {
            output = new PrintWriter(f1);
        } catch (FileNotFoundException ex) {
            ex.printStackTrace();
        }
        for (RegistReview ss : objects) {
            output.print(ss.toString() +  "\n");
        }
        output.close();
    }

这里我们只需要使用Scanner类就可以完成文本文件的读取,使用PrintWriter就可以完成文本文件的写入,是不是很方便呢

没看太懂?请继续往下看,允许我为你解释的明明白白

-------------------------------------------------------------------------------------------------------------

我们都知道,读取文件的根本目的是对文件内容进行增删改查,如果直接修改文件内容的话,增删查还比较容易实现,但是修改呢?这时候需要我们找到要修改的一行并只修改那一行。

毫无疑问,“只修改文本文件的特定一行”的实现是比较困难的

因此,我们可以换一种方式进行修改——在读取文本文件时,将数据全部读进ArrayList<E>当中,E是该文件存储数据所属的类。

值得注意的是,写入文件时我们一般以字符串的形式写入,每一行都代表类的一个实例化对象,举个例子:

public class Activity {
  
    protected String starterName;//活动发布者姓名
    protected String activityName;//活动名称
    protected String activityContent;//活动内容
    protected String activityTime;//活动时间

    public String toString() {
        return starterName + '\t' + activityName + '\t' +  activityContent + '\t' +             
        activityTime;
               
    }
}

此时我们需要把活动信息存入文件中,那么存入之前要先用toString()方法将对象转化为字符串

那么此时,我们的文本文件中的每一行数据均为一个String字符串,内容为“活动发布者姓名 活动名称 活动内容 活动时间”。

--------------------------------------------------------------------------------------------------------------------

之后的增删改查操作都在ArrayList当中进行,实在是太方便了,关于ArrayList的方法烦请读者们自行搜索。

最后在结束操作时,可以是在用户点击“退出”按钮时,在按钮的响应事件中我们就可以将ArrayList<>中的数据写入文件中了。

------------------------------------------------------------------------------

本篇属于java课程设计专栏的文章,专栏后续会更新java课程设计的完成与实现,感兴趣的童鞋可订阅食用

本次分享到此结束,886~