0
好吧,對於一個學校項目,我正在嘗試製作一個方法來取得文件,使用凱撒密碼對其進行「加密」,然後輸出新的加密的單詞到輸出文件,讀取文件的所有單詞以給我們留下一個單獨的加密文件。Java凱撒密碼用數組值替換字符串中的字符
我快到的問題是,我得到一個
「意外的類型要求:變量值:值」錯誤
每當我試圖用新的替換字符一。
這是我的加密方法,所以希望這足以發現問題。
public static void encrypt(File inputFile, int key) throws FileNotFoundException
{
char[] alpha = new char[26];
for(char ch = 'a'; ch <= 'z'; ch++)
{
int i = 0;
alpha[i] = ch;
i++;
}
Scanner in = new Scanner(inputFile);
while(in.hasNext())
{
String word = in.next();
word = word.toLowerCase();
for(int i = 0; i < word.length(); i++)
{
for(int j = 0; j < alpha.length; j++)
{
if(word.charAt(i) == alpha[j])
{
word.charAt(i) = alpha[j + key];
}
}
}
}
}
謝謝,這似乎已經解決了這個問題。只是好奇,你現在怎麼打印出這個文件?我顯然需要一次打印一個單詞,但是如何在不覆蓋每次保存文件的情況下執行此操作。 – Redfox2045
@ Redfox2045我很高興它有幫助。請考慮upvote和/或接受這個答案。 –
@ Redfox2045根據您的其他問題,請查看http://stackoverflow.com/questions/8563294/modifying-existing-file-content-in-java –