当前位置: 首页 > 编程语言 > C#

TextBox控件的序列化数据应该指定哪种编码Share

时间:2023-04-10 23:45:11 C#

TextBox控件的序列化数据应该指定哪种编码假设我的WinForms应用程序中有一个TextBox。当用户单击按钮时,应用程序应通过TCP发送存储在此TextBox中的序列化值。对于序列化,我正在使用Newtonsoft.Json库,如下所示:stringjson=JsonConvert.SerializeObject(credentials);其中credentials是保存TextBox值的类的对象。然后我需要通过TcpClient类通过网络发送它:TcpClientclient=newTcpClient(IpAddress,Port);NetworkStream流=client.GetStream();//???但我需要先将json字符串转换为字节数组,所以我必须指定一个文本编码。我应该指定哪种文本编码是非常安全的?我不能只将它设置为ASCII,因为用户可以输入unicode字符。.NETFramework使用UTF-16编码(由UnicodeEncoding类表示)来表示字符和字符串。因此,您可以使用System.Text.Encoding.Unicode.GetBytes来获取字符串的字节。有关详细信息:任何Unicode编码(UTF-7、UTF-8、UTF-16、UTF-32等)都可用于对Unicode字符进行编码。UTF-8可能是最紧凑的,这取决于文本中使用的书写系统。以上就是C#学习教程:TextBox控件的序列化数据应该指定哪种编码?如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文来自网络合集,不代表立场,如涉及侵权,请点击有权联系管理员删除。如需转载请注明出处: