誰かが助けてくれれば幸いです!テキスト(ファイルから読み取った暗号化されたもの)の各文字を、辞書にある別の文字に置き換える必要があります。
StreamReader st = new StreamReader(@"C:\path of text");
string text = st.ReadToEnd();
st.Close();
char[] textChar = text.ToCharArray(); //splitting text into characters
したがって、キーの辞書Dictionary<char, char> keys = new Dictionary<char,char>();
には、「n」と言う文字があり、値には「a」と言う別の文字があります。したがって、テキスト内の各「n」を「a」に置き換える必要があります。ディクショナリには、キーが 26 文字、値が 26 文字あります。
今、文字を置き換えて、「復号化された」テキストをいくつかのファイルに書き込もうとしています
StreamWriter sw = new StreamWriter(@"path for decrypted file");
foreach(KeyValuePair<char, char> c in keys)
{
for(int i =0; i< textChar.Length; i++)
{
if (textChar.Contains(c.Key))
{ //if text has char as a Key in Dictionary
textChar[i] = keys[c.Key]; //replace with its value
}
else
{
sw.Write(textChar[i]); //if not, just write (in case of punctuatuons in text which i dont want to replace)
}
}
}
st.Close();
file.Close();
置換が間違っているため、このコードは正しく機能しません。どんな助けにも感謝します!