7-3 复制源码 分数 10 作者 强彦 单位 太原理工大学 编写程序,将程序文件的源代码复制到程序文件所在目录下的“temp.txt”文件中。用java实现
时间: 2024-10-27 22:07:03 浏览: 149
微信小程序全套源代码(后台、小程序php)(源码).zip
在Java中,你可以使用`java.io.File`和`java.io.FileWriter`类来实现这个功能。以下是一个简单的示例程序,它会读取当前文件所在的目录,并将源代码复制到名为"temp.txt"的文件中:
```java
import java.io.*;
public class Main {
public static void main(String[] args) {
try {
// 获取当前文件的绝对路径
File file = new File(Main.class.getProtectionDomain().getCodeSource().getLocation().getPath());
// 创建临时文件对象,指定在文件同级目录下创建 "temp.txt"
File tempFile = new File(file.getParent(), "temp.txt");
// 检查目标文件是否已经存在,如果不存在则创建
if (!tempFile.exists()) {
tempFile.createNewFile();
}
// 使用BufferedReader读取源文件内容,Writer写入临时文件
BufferedReader reader = new BufferedReader(new FileReader(file));
BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));
String line;
while ((line = reader.readLine()) != null) {
writer.write(line);
writer.newLine(); // 在每行末尾添加换行符
}
// 关闭流资源
reader.close();
writer.close();
System.out.println("源代码已成功复制到temp.txt文件中。");
} catch (IOException e) {
System.err.println("发生错误: " + e.getMessage());
}
}
}
```
运行此程序时,需要确保当前文件是一个Java类文件(.class),因为`Main.class.getProtectionDomain().getCodeSource().getLocation()`用于获取它的位置。源代码会被复制到该文件所在的同一级目录下。
阅读全文