【发布时间】:2016-09-29 17:35:54
【问题描述】:
我需要从文本框中输入多个值,这必须在我关闭窗口时发生。它是这样工作的。
private void frmUser_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
byte[] encryted = System.Text.Encoding.Unicode.GetBytes(txtIp.Text);
txtIp.Text = Convert.ToBase64String(encryted);
byte[] encryted2 = System.Text.Encoding.Unicode.GetBytes(txtUser.Text);
txtUser.Text = Convert.ToBase64String(encryted2);
byte[] encryted3 = System.Text.Encoding.Unicode.GetBytes(txtPass.Text);
txtPass.Text = Convert.ToBase64String(encryted3);
Configuration conf = new Configuration("C:\\conf.ini");
conf.IniWriteValue("Info", "Ip", txtIp.Text);
conf.IniWriteValue("Info", "User", txtUser.Text);
conf.IniWriteValue("Info", "Password", txtPass.Text);
}
但是,我怎样才能做一个“For”函数,而不是写很多代码?
编辑 这是加密文件。
【问题讨论】:
-
ToBase64String和/或Encoding.GetBytes未加密数据。任何有权访问谷歌的人都可以想出如何扭转它。这几乎相当于将一个短语从英语翻译成西班牙语,不会说西班牙语的人可能会遇到麻烦,但如果用户可以确定它是西班牙语,那么他们可以在互联网的帮助下在几秒钟内将其翻译。还定义For函数?你这是什么意思? -
不需要循环。您的代码简单易懂。在搜索特定文本框控件的控件列表中使用循环会使其更加复杂。
-
@Fabricio Koch,是的,但是我有很多 TextBox,上面的代码只是一个示例。
-
只是为了证明我的观点是您上面文件中的数据:
Password: 12345, User: admin, Ip: 192.168.10.246。我必须写 0 代码来做到这一点,只需将其插入 base64decode.org -
用户:管理员密码:12345