欢迎访问宙启技术站
智能推送

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操作及其实现方式,可以根据需求来选择合适的方法来进行文件的读取、写入、复制和拷贝。