还不会文件读写操作?这一篇就通过实战教会你

简介: 通过Java语言对文件进行读、写、重命名等一系列操作。

Java是一门特别强大的面向对象的编程语言,不仅简洁方便,而且灵活多变。在它丰富的功能之一就可以操作文件。这几天有些小伙伴对文件操作不是很熟悉,也因为快到期末了,今天来实战演练一下,这样更方便理解与领悟。

首先对文件的操作肯定就会涉及到流的操作,这里先看一个IO流的类结构图。

image.png这是一个经常使用到的一些输入输出流的类的继承树图。输入流或输出流又分为字节流和字符流,顾名思义就是以字节(二进制方式)或一个个字符进行输入和输出。在实际的业务中需要字节流还是字符流取决于业务需求是什么样的。

文件读取

首先我们要明白一个流程,我们要操作文件首先要创建一个操作文件的映射体或称为对象,然后再创建一个能够读取文件的对象,这样我们就可以把文件中的数据读取出来了。这里我的实例文件里填充的数据是字符,所以本例中采用的是字符流进行相关操作,下面用代码进行实战演练:

BufferedReaderreader=newBufferedReader(newFileReader("F:\\xujinshuo.txt"));
Stringstr1=""; //读取的数据Stringline=""; //每行读取到的数据while ((line=reader.readLine()) !=null){
str1+=line.toUpperCase();
        }
reader.close(); //流用完就必须关闭

我们如果想读取F盘下的xujinshuo.txt文件,首先我们创建一个FileReader操作文件对象把文件的路径放进去,之后再用功能比较强大的BufferedReader缓冲流进行包装,每次读取文件中的一行数据,在循环内可以进行其他的操作,比如:转大小写,添加其他样式符号等,每次读取的行数据进行累加,循环结束时,文件指针走到最后刚好读完所有数据。

文件写入

BufferedWriterwriter=newBufferedWriter(newFileWriter("F:\\xujinshuo.txt",true));
writer.newLine();   //换行写入writer.write(str1); //str1是需要写入的字符串数据writer.close();

写入的操作和读取操作在第一步创建相应的输入输出对象的方式上基本上都是大同小异,特别注意的是new FileWriter()这个构造器的第二个参数如果是false或者不写,默认是覆盖写入,就是写入现有数据会覆盖文件原有数据,从头开始添加。我们追加数据到文件,就需要把第二参数设置为true,true代表是从原有数据后面追加新的数据。接下来只需调用BufferedWriter对象的writer方法写入数据即可,最后一步很重要就是别忘了关闭流,不关闭流很可能出现异常或报错。

文件重命名

文件重命名也是比较简单的,但是注意的细节不少,一不小心可能就会重命名失败。

Filefile1=newFile("F:\\xujinshuo.txt");
if (file1.renameTo(newFile("F:\\xujinshuo_new.txt"))){
System.out.println("文件重命名成功了!");
        }else {
System.out.println("文件重命名失败!");
        }

通过创建一个文件对象File调用重命名方法renameTo,重命名成功该方法就会放回true,失败就会返回false。但是注意的是:1、重命名时文件扩展名不同。2、重命名前的源文件不存在。这两点任一一点存在都会导致该方法返回false从而重命名失败,需要特别注意。

相关文章
|
9月前
|
存储 Linux API
Linux应用开发基础知识——文件IO操作(三)
Linux应用开发基础知识——文件IO操作(三)
97 2
Linux应用开发基础知识——文件IO操作(三)
|
5月前
|
数据挖掘 Python
🚀告别繁琐!Python I/O管理实战,文件读写效率飙升的秘密
在日常编程中,高效的文件I/O管理对提升程序性能至关重要。Python通过内置的`open`函数及丰富的库简化了文件读写操作。本文从基本的文件读写入手,介绍了使用`with`语句自动管理文件、批量读写以减少I/O次数、调整缓冲区大小、选择合适编码格式以及利用第三方库(如pandas和numpy)等技巧,帮助你显著提升文件处理效率,让编程工作更加高效便捷。
64 0
|
5月前
|
监控 安全 Java
文件操作不再难!Python系统编程实战,带你轻松驾驭文件系统与I/O
【9月更文挑战第13天】在Python系统编程中,文件操作与I/O管理至关重要。本文通过五个实战案例分享最佳实践:高效遍历文件系统、优雅处理文件读写、利用缓冲机制优化性能、并行处理文件加速任务以及异常处理确保程序稳健。使用pathlib、上下文管理器及concurrent.futures等工具,助你轻松掌握Python文件系统与I/O操作,提升编程效率和项目质量。 示例代码展示了如何使用pathlib遍历目录、with语句安全读写文件、控制缓冲区大小、并行处理多个文件以及捕获异常保证程序稳定运行。通过这些技巧,你将能够在实际项目中更加高效地管理和操作文件。
54 6
|
6月前
|
存储 程序员 C语言
【C初阶】文件操作管理
【C初阶】文件操作管理
|
8月前
|
JSON 安全 数据格式
Python文件操作宝典:一步步教你玩转文件读写
Python文件操作宝典:一步步教你玩转文件读写
|
9月前
|
C++
C++语言学习文件操作应用案例
C++文件操作示例:创建`ofstream`对象写入"Hello, World!"到`output.txt`,刷新缓冲区,然后使用`ifstream`读取并打印文件内容。如果文件打开失败,程序将显示错误信息并返回1。
51 3
|
9月前
练习所学文件操作的相关函数
上上篇文章,我们介绍了文件和文件操作函数,现在我们来练习一下所学文件操作的相关函数吧! 实践出真知~
44 0
|
9月前
|
存储 C语言
C文件读写研究
C文件读写研究
50 0
|
BI
【文件操作的重难点详解】(一)
【文件操作的重难点详解】(一)
76 0
|
存储
【文件操作的重难点详解】(二)
【文件操作的重难点详解】(二)
73 0