JAVA文件读写操作详解
什么是文件读写操作
文件读写操作是指对于指定的文件,通过程序的方式读取其中的数据或者将程序中的数据写入到文件中。文件读写操作是一个底层的技术,基本上所有的软件开发都会用到这个技术。
JAVA文件读写操作的常用类
在JAVA中,文件读写操作主要涉及到以下几个类:
- File类:代表文件和目录的抽象表示。通过对File类的操作,可以创建、删除、重命名文件或目录。
- InputStream/Reader:从文件中读取数据。
- OutputStream/Writer:向文件中写入数据。
下面分别对这些类进行详细介绍。
File类
File类是java.io包中的一个类,它代表了文件系统中的某个文件或目录。File类主要提供了以下方法:
File(String pathname)
:创建指定路径名的File对象。boolean exists()
:测试此抽象路径名表示的文件或目录是否存在。boolean isDirectory()
:测试此抽象路径名表示的文件是否是一个目录。boolean isFile()
:测试此抽象路径名表示的文件是否是一个标准文件。
示例1:判断指定路径下的文件或目录是否存在,如果存在则打印出它们的名称和类型。
File file = new File("E:/test"); // test是一个目录,下面有若干个文件和子目录
if (file.exists()) {
if (file.isDirectory()) {
System.out.println("这是一个目录");
File[] subFiles = file.listFiles();
for (File subFile : subFiles) {
if (subFile.isDirectory()) {
System.out.println("目录:" + subFile.getName());
} else {
System.out.println("文件:" + subFile.getName());
}
}
} else {
System.out.println("这是一个文件");
}
} else {
System.out.println("指定路径下不存在该文件或目录");
}
InputStream/Reader和OutputStream/Writer
InputStream/Reader和OutputStream/Writer是JAVA中用于读写文件的类,它们的基本用法如下:
InputStream/Reader
InputStream/Reader是JAVA中读取文件的类,InputStream主要是读取字节数据,Reader主要是读取字符数据。InputStream/Reader 的基本用法如下:
int read()
:从输入流中读取下一个字节/字符,如果已经到达文件末尾,则返回-1。int read(byte[] b)
/int read(char[] cbuf)
:从输入流中读取若干字节/字符,并将它们存储到指定的字节数组/字符数组中。
示例2:从文件中读取字符数据,并将它们打印到控制台上。
File file = new File("E:/test.txt");
try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
OutputStream/Writer
OutputStream/Writer是JAVA中写入文件的类,OutputStream主要是写入字节数据,Writer主要是写入字符数据。OutputStream/Writer 的基本用法如下:
void write(int b)
/void write(char[] cbuf)
/void write(String str)
:将指定的字节/字符/字符串写入输出流中。
示例3:将数据写入到文件中。
File file = new File("E:/output.txt");
try (BufferedWriter writer = new BufferedWriter(new FileWriter(file))) {
writer.write("hello world\n");
writer.write("I am ready");
} catch (IOException e) {
e.printStackTrace();
}
总结
JAVA中的文件读写操作是非常实用的技术,而且它们的实现并不难掌握。通过上述介绍,学习者应该能够掌握文件读写操作的基本知识,并能够使用JAVA来实现它们。在实际使用时,建议掌握一些常用的类库或工具,比如Apache的IOUtils和commons-io等,这样能够节省不少时间和精力。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA文件读写操作详解 - Python技术站