Java 文件输入输出是什么?怎么用?
Java文件输入输出(File IO)用于读写文件中的数据。在Java中,文件输入输出的操作一般是通过字节流或字符流来完成的,这些流的类型与上一个问题中提到的字节流和字符流类似。Java提供了大量用于文件输入输出的类和方法,其中最常用的类有File、FileReader、FileWriter、FileInputStream和FileOutputStream。
File类用于表示文件和目录路径名称的抽象表示。可以使用File类操作文件和目录,如检索文件信息、创建和删除文件等。以下是一个使用File类的示例:
import java.io.*;
public class Example {
public static void main(String[] args) {
// 定义一个文件对象
File file = new File("test.txt");
try {
// 判断文件是否存在
if (file.exists()) {
System.out.println("File exists.");
} else {
// 创建新文件
file.createNewFile();
System.out.println("File created.");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
FileReader和FileWriter类用于读写文本文件数据。这两个类的使用方式非常类似于之前提到的字符输入输出流,以下是使用FileReader和FileWriter操作文件的示例:
import java.io.*;
public class Example {
public static void main(String[] args) throws IOException {
FileReader fileReader = null;
FileWriter fileWriter = null;
try {
fileReader = new FileReader("source.txt");
fileWriter = new FileWriter("destination.txt");
int data;
while ((data = fileReader.read()) != -1) {
fileWriter.write(data);
}
} finally {
if (fileReader != null) {
fileReader.close();
}
if (fileWriter != null) {
fileWriter.close();
}
}
}
}
FileInputStream和FileOutputStream类用于读写二进制文件数据,以及处理音频、图片等二进制文件类型。以下是使用FileInputStream和FileOutputStream操作文件的示例:
import java.io.FileInputStream;
public class ReadFileExample {
public static void main(String[] args) {
try {
FileInputStream input = new FileInputStream("filename.txt");
int data;
while ((data = input.read()) != -1) {
System.out.print((char) data);
}
input.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
以上代码打开名为filename.txt的文件并读取其内容。while循环逐个读取字符并将其打印到控制台。
import java.io.FileOutputStream;
public class WriteFileExample {
public static void main(String[] args) {
try {
FileOutputStream output = new FileOutputStream("filename.txt");
String data = "Hello, World!";
byte[] bytes = data.getBytes();
output.write(bytes);
output.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
以上代码创建一个名为filename.txt的文件,并将字符串"Hello, World!"写入该文件。
请先 后发表评论~