private static void Read(MySafe safe, string fileName) { string encrypted = File.ReadAllText(fileName); string decrypted = safe.Decrypt(encrypted); Console.WriteLine(decrypted); }
/// <summary> /// 使用-r和-w命令行参数,可以启动控制台应用程序,读写存储器。 /// 此外,需要使用命令行,设置一个文件名来读写。 /// 检查命令行参数后,通过调用InitProtection辅助方法来初始化数据保护。 /// 这个方法返回一个MySafe类型的对象,嵌入IDataProtector。 /// 之后,根据命令行参数,调用Write或Read方法 /// </summary> /// <param name="arr"></param> public static void DataProtectionStart(string[] arr) { if (arr.Length != 2 || arr.Intersect(options).Count() != 1) { ShowUsage(); return; } string fileName = arr[1]; MySafe safe = InitProtection(); switch (arr[0]) { case writeOption: Write(safe, fileName); break; case readOption: Read(safe, fileName); break; default: ShowUsage(); break; } }
private static void Write(MySafe safe, string fileName) { Console.WriteLine("输入内容,开始write方法"); string content = Console.ReadLine(); string encrypted = safe.Encrypt(content); File.WriteAllText(fileName, encrypted); Console.WriteLine($"内容已写入{fileName}"); }