用java编写程序,利用凯赛密码加密,提示用户输入一个输入文件名和一个输出文件名,然后将输入文件的加密版本存为输出文件;
时间: 2024-06-10 12:08:58 浏览: 58
好的,这个问题很有趣!以下是一个用Java实现凯撒密码加密的示例程序:
```
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class CaesarCipher {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入输入文件名:");
String inputFileName = scanner.nextLine();
System.out.print("请输入输出文件名:");
String outputFileName = scanner.nextLine();
System.out.print("请输入密钥:");
int key = scanner.nextInt();
scanner.close();
try (BufferedReader reader = new BufferedReader(new FileReader(inputFileName));
FileWriter writer = new FileWriter(outputFileName);) {
int c;
while ((c = reader.read()) != -1) {
if (Character.isLetter(c)) {
c = (c - 'a' + key) % 26 + 'a';
} else if (Character.isUpperCase(c)) {
c = (c - 'A' + key) % 26 + 'A';
}
writer.write(c);
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("加密完成!");
}
}
```
请注意,这只是一个简单的示例程序,实际上它并不是一个非常安全的加密算法,因为它可以轻松地被破解。如果你需要更安全的加密方式,可以考虑使用更复杂的加密算法,例如AES或RSA。
阅读全文