嗨,我是编程和网络开发的初学者.我有一个关于ASCII和Unicode编码的问题.
在msdn和其他Web示例中执行以下操作:
byte[] byteData = Encoding.ASCII.GetBytes(data);
Run Code Online (Sandbox Code Playgroud)
这是因为这些代码示例是旧的吗?不应该是:
byte[] byteData = Encoding.Unicode.GetBytes(data);
Run Code Online (Sandbox Code Playgroud)
感谢您的输入!
Jon*_*eet 10
这取决于 - 您希望结果是ASCII还是UTF-16?当你想要另一个时,每个人都错了.
如果您正在谈论某些网络协议,则必须找出协议所期望的字符编码.使用错误的编码,坏事将发生.
当然,ASCII有很大的限制 - 它是基于英语的(仅限拉丁字符,没有重音符号),但它对某些协议是正确的.其他人可能会使用UTF-16(Encoding.Unicode),UTF-8或其他编码...或者他们会让你自己在协议中指定编码.