在Java中,可以使用java.io包中的类来实现文件的读写操作。以下是一些常用的文件读写方法:
FileReader和FileWriter类进行字符读写:import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileReadWrite {
public static void main(String[] args) {
String filePath = "example.txt";
// 写入文件
try (FileWriter fileWriter = new FileWriter(filePath)) {
fileWriter.write("Hello, World!");
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件
try (FileReader fileReader = new FileReader(filePath)) {
int character;
while ((character = fileReader.read()) != -1) {
System.out.print((char) character);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
BufferedReader和BufferedWriter类进行字符读写:import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileReadWrite {
public static void main(String[] args) {
String filePath = "example.txt";
// 写入文件
try (BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(filePath))) {
bufferedWriter.write("Hello, World!");
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件
try (BufferedReader bufferedReader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
FileInputStream和FileOutputStream类进行字节读写:import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileReadWrite {
public static void main(String[] args) {
String filePath = "example.txt";
// 写入文件
try (FileOutputStream fileOutputStream = new FileOutputStream(filePath)) {
byte[] data = "Hello, World!".getBytes();
fileOutputStream.write(data);
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件
try (FileInputStream fileInputStream = new FileInputStream(filePath)) {
int byteData;
while ((byteData = fileInputStream.read()) != -1) {
System.out.print((char) byteData);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
BufferedInputStream和BufferedOutputStream类进行字节读写:import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileReadWrite {
public static void main(String[] args) {
String filePath = "example.txt";
// 写入文件
try (BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(filePath))) {
byte[] data = "Hello, World!".getBytes();
bufferedOutputStream.write(data);
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件
try (BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(filePath))) {
int byteData;
while ((byteData = bufferedInputStream.read()) != -1) {
System.out.print((char) byteData);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
注意:在实际应用中,可能需要处理更大的文件或进行更复杂的读写操作。在这种情况下,可以考虑使用NIO(New I/O)库中的类,如FileChannel、ByteBuffer等,以提高性能。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。