JavaIO操作中常用函数的应用及实现:读取、写入、复制、拷贝等
发布时间:2023-07-04 02:18:38
Java IO操作是开发中非常常见的操作,用于读取、写入和复制文件等。下面将介绍一些常用的Java IO函数及其应用和实现方式。
1. 读取文件内容:使用FileInputStream和BufferedReader类来读取文件内容。示例代码:
try (BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("filename.txt"), "UTF-8"))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
2. 写入文件内容:使用FileOutputStream和BufferedWriter类来写入文件内容。示例代码:
try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("filename.txt"), "UTF-8"))) {
bw.write("Hello, World!");
} catch (IOException e) {
e.printStackTrace();
}
3. 复制文件:使用FileInputStream和FileOutputStream类来实现文件复制。示例代码:
try (FileInputStream fis = new FileInputStream("source.txt");
FileOutputStream fos = new FileOutputStream("destination.txt")) {
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
fos.write(buffer, 0, length);
}
} catch (IOException e) {
e.printStackTrace();
}
4. 拷贝文件夹:使用递归的方式拷贝文件夹及其下的所有文件和子文件夹。示例代码:
public static void copyFolder(File sourceFolder, File destinationFolder) throws IOException {
if (sourceFolder.isDirectory()) {
if (!destinationFolder.exists()) {
destinationFolder.mkdir();
}
String[] files = sourceFolder.list();
if (files != null) {
for (String file : files) {
File srcFile = new File(sourceFolder, file);
File destFile = new File(destinationFolder, file);
copyFolder(srcFile, destFile);
}
}
} else {
try (FileInputStream fis = new FileInputStream(sourceFolder);
FileOutputStream fos = new FileOutputStream(destinationFolder)) {
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
fos.write(buffer, 0, length);
}
}
}
}
以上是一些常用的Java IO操作及其实现方式,可以根据需求来选择合适的方法来进行文件的读取、写入、复制和拷贝。
