Java用FileOutputStream复制文件到指定文件夹,给出代码示例
时间: 2023-03-15 21:31:33 浏览: 135
以下是使用FileOutputStream复制文件到指定文件夹的Java代码示例: try {
FileInputStream fis = new FileInputStream("src文件路径");
FileOutputStream fos = new FileOutputStream("dest文件夹路径");
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
fos.write(buffer, 0, length);
}
// 关闭流
fis.close();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
相关问题
java复制文件到指定文件夹
要将文件复制到指定文件夹,可以使用Java的文件输入输出流。具体步骤如下:
1. 创建源文件和目标文件夹的File对象。
2. 创建文件输入流和输出流对象。
3. 创建缓冲区数组。
4. 循环读取源文件内容到缓冲区,并将缓冲区内容写入目标文件。
5. 关闭输入输出流。
下面是一个示例代码:
```
import java.io.*;
public class FileCopy {
public static void main(String[] args) {
File sourceFile = new File("source.txt");
File targetFolder = new File("target");
try {
FileInputStream fis = new FileInputStream(sourceFile);
FileOutputStream fos = new FileOutputStream(new File(targetFolder, sourceFile.getName()));
byte[] buffer = new byte[1024];
int len;
while ((len = fis.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
fis.close();
fos.close();
System.out.println("文件复制成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
Java复制文件到另一个文件夹
以下是Java实现文件夹内所有文件拷贝到另一个文件夹的代码示例:
```java
import java.io.*;
public class CopyFolder {
public static void main(String[] args) {
File srcFolder = new File("source folder path");
File destFolder = new File("destination folder path");
// 如果目标文件夹不存在,则创建
if (!destFolder.exists()) {
destFolder.mkdir();
System.out.println("Destination folder created successfully");
}
// 获取源文件夹下的所有文件和文件夹
File[] files = srcFolder.listFiles();
// 遍历所有文件和文件夹
for (File file : files) {
// 如果是文件,则直接拷贝
if (file.isFile()) {
File destFile = new File(destFolder, file.getName());
copyFile(file, destFile);
}
// 如果是文件夹,则递归调用本方法
else if (file.isDirectory()) {
File newDestFolder = new File(destFolder, file.getName());
newDestFolder.mkdir();
copyFolder(file, newDestFolder);
}
}
System.out.println("Copy completed successfully");
}
// 拷贝文件
private static void copyFile(File srcFile, File destFile) {
try (InputStream in = new FileInputStream(srcFile);
OutputStream out = new FileOutputStream(destFile)) {
byte[] buffer = new byte[1024];
int length;
while ((length = in.read(buffer)) > 0) {
out.write(buffer, 0, length);
}
} catch (IOException e) {
e.printStackTrace();
}
}
// 拷贝文件夹
private static void copyFolder(File srcFolder, File destFolder) {
if (!destFolder.exists()) {
destFolder.mkdir();
}
File[] files = srcFolder.listFiles();
for (File file : files) {
if (file.isFile()) {
File destFile = new File(destFolder, file.getName());
copyFile(file, destFile);
} else if (file.isDirectory()) {
File newDestFolder = new File(destFolder, file.getName());
newDestFolder.mkdir();
copyFolder(file, newDestFolder);
}
}
}
}
```
请注意,上述代码中的“source folder path”和“destination folder path”需要替换为实际的源文件夹路径和目标文件夹路径。
阅读全文