Java通过给文件中的每个字节加5来对文件编码,编写一个程序,提示用户输入一个输入文件名和一个输出文件名,然后将输入文件的加密版本存入输出文件
时间: 2024-02-29 12:53:05 浏览: 19
以下是 Java 代码实现:
```java
import java.io.*;
public class Main {
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.print("请输入输入文件名:");
String inputFileName = reader.readLine();
System.out.print("请输入输出文件名:");
String outputFileName = reader.readLine();
FileInputStream fis = new FileInputStream(inputFileName);
FileOutputStream fos = new FileOutputStream(outputFileName);
int b;
while ((b = fis.read()) != -1) {
b = (b + 5) % 256; // 对字节加5
fos.write(b); // 将加密后的字节写入输出文件
}
fis.close();
fos.close();
System.out.println("加密成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个程序首先使用 `BufferedReader` 读取用户输入的输入文件名和输出文件名。然后使用 `FileInputStream` 和 `FileOutputStream` 分别打开输入文件和输出文件。程序使用一个循环逐个读取输入文件的字节,对每个字节加5,再将加密后的字节写入输出文件。最后,程序关闭输入和输出文件,并输出加密成功的提示信息。需要注意的是,加密后的字节要进行取模运算,确保它们在 0~255 的范围内。