通过给文件中的每个字节加5来对文件编码。编写一个程序,提示用户输入 一个输入文件名和一个输出文件名,然后将输入文件的加密版本存入输出文件。
时间: 2024-03-02 20:51:33 浏览: 50
下面是Java代码实现:
```java
import java.io.*;
public class FileEncoder {
public static void main(String[] args) {
String inputFileName, outputFileName;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter input file name: ");
try {
inputFileName = reader.readLine();
System.out.println("Enter output file name: ");
outputFileName = reader.readLine();
File inputFile = new File(inputFileName);
File outputFile = new File(outputFileName);
if (inputFile.exists()) {
try (InputStream inputStream = new FileInputStream(inputFile);
OutputStream outputStream = new FileOutputStream(outputFile)) {
int byteRead;
while ((byteRead = inputStream.read()) != -1) {
byteRead += 5;
outputStream.write(byteRead);
}
System.out.println("File encoded successfully.");
} catch (IOException e) {
System.out.println("Error occurred while encoding the file.");
e.printStackTrace();
}
} else {
System.out.println("Input file does not exist.");
}
} catch (IOException e) {
System.out.println("Error occurred while reading input.");
e.printStackTrace();
}
}
}
```
在这个程序中,我们首先提示用户输入输入文件名和输出文件名,然后尝试打开这两个文件。如果输入文件存在,就读取它的每个字节并将其加5,然后将加密后的字节写入输出文件。如果输入文件不存在,就输出错误信息。如果在编码过程中发生了错误,就输出错误信息并打印异常堆栈跟踪。