Я хочу сохранить строку в файле таким образом, чтобы ее нельзя было легко прочитать. Поэтому я использую BinaryFormatter так:Как читать двоичную форматированную строку из файла?
using (FileStream fs = File.Create(sfDialog.FileName, 2048, FileOptions.None))
{
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, Encoding.Unicode.GetBytes(this.BodyText));
}
где this.BodyText
является строка для сохранения.
Теперь я изо всех сил пытаюсь прочитать его из файла. Я пробовал BinaryReader
без успеха, поэтому, я думаю, я должен использовать BinaryFormatter
. Я попробовал метод Deserialize
, но он возвращает объект, который нельзя отнести к строке. Также Convert.ToBase64String
не может использоваться на объекте.
Кто-нибудь знает, как решить мою проблему?
Если вы хотите, чтобы строка не быть легко читаемой, вы действительно должны рассмотреть надлежащее шифрование. –
Я предлагаю вам преобразовать вашу строку в byte [] и xor ее элементы с некоторым значением. – enkryptor
Если вы не хотите, чтобы это легко читалось, почему бы не зашифровать его? –