Я работаю с большой строкой в C#. Например, моя длина строки составляет 2.000.000 символов. Я должен зашифровать эту строку. Я должен сохранить его как текстовый файл на жестком диске. Я попытался зашифровать, используя XOR для быстрого и простого шифрования текста, но все еще занимает слишком длинное шифрование. Требуется 1 час с дуплексным процессором 2,13 ГГц и 3 ГБ оперативной памяти. Кроме того, сохранение файла (с использованием метода записи StreamWriter) и чтение из файла (с использованием метода StreamReader ReadToEnd) занимает слишком много времени.Работа с большой строкой
Код:
public static string XorText(string text)
{
string newText = "";
int key = 1;
int charValue;
for (int i = 0; i < text.Length; i++)
{
charValue = Convert.ToInt32(text[i]); //get the ASCII value of the character
charValue ^= key; //xor the value
newText += char.ConvertFromUtf32(charValue); //convert back to string
}
return newText;
}
Что вы посоветуете для этих операций?
Итак, вы хотите зашифровать текстовый файл? – Magnus
Это путаница в лучшем случае – CodesInChaos
Зачем вы называете ConvertFromUtf32? Я имею в виду, что вы не первый раз вызываете ConvertToUtf32. Так что тоже можно идти. –