编写java程序,将程序文件的源代码复制到程序文件所在目录下的“temp.txt”文件中。
时间: 2024-11-20 19:42:30 浏览: 11
在Java中,你可以使用`java.io.FileWriter`和`java.io.BufferedReader`类来完成这个任务。首先,你需要获取当前程序文件的路径,然后创建一个新的文本文件并写入源代码。下面是一个简单的示例:
```java
import java.io.*;
public class CopySourceCode {
public static void main(String[] args) {
try {
// 获取当前类的源文件路径
String sourceFilePath = CopySourceCode.class.getResource(CopySourceCode.class.getSimpleName() + ".class").getFile();
// 获取类文件的父目录作为新文件的路径
File parentDir = new File(sourceFilePath.substring(0, sourceFilePath.lastIndexOf('/')) + "/");
// 创建目标文件名
String targetFileName = "temp.txt";
File targetFile = new File(parentDir, targetFileName);
// 写入源代码到新文件
FileWriter writer = new FileWriter(targetFile);
BufferedReader reader = new BufferedReader(new FileReader(sourceFilePath));
String line;
while ((line = reader.readLine()) != null) {
writer.write(line);
writer.newLine(); // 每行结尾添加换行符
}
writer.close();
reader.close();
System.out.println("源代码已成功复制到" + targetFile.getAbsolutePath());
} catch (IOException e) {
System.err.println("Error copying code: " + e.getMessage());
e.printStackTrace();
}
}
}
```
在这个例子中,我们首先从类路径中找到`.class`文件的位置,然后获取其父目录。接着,我们创建一个`FileWriter`来写入新的`temp.txt`文件,并使用`BufferedReader`逐行读取源代码文件的内容。
阅读全文