4.利用文件输入/输出流和缓冲流编写一个实现文件拷贝的程序,源文件名和目标文件名通过Scanner类从控制台获取。
时间: 2023-11-22 13:52:34 浏览: 131
下面是一个实现文件拷贝的程序,可以将一个文件中的内容复制到另一个文件中:
```java
import java.io.*;
public class FileCopy {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入源文件名:");
String sourceFileName = scanner.nextLine();
System.out.print("请输入目标文件名:");
String targetFileName = scanner.nextLine();
try (
FileInputStream fis = new FileInputStream(sourceFileName);
BufferedInputStream bis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream(targetFileName);
BufferedOutputStream bos = new BufferedOutputStream(fos);
) {
byte[] buffer = new byte[1024];
int len;
while ((len = bis.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
bos.flush();
System.out.println("文件复制成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
上面的代码中,我们使用了输入流和输出流来读取和写入文件,并使用了缓冲流来提高读写效率。在程序运行时,通过Scanner类从控制台获取源文件名和目标文件名,并将源文件中的内容复制到目标文件中。
阅读全文