我正在研究C#,尝试下面的代码
byte[] buffer = new byte[str.Length];
buffer = Encoding.UTF8.GetBytes(str);
Run Code Online (Sandbox Code Playgroud)
在str我有冗长的数据,但我在获得完整的编码字节方面遇到了问题.请告诉我出了什么问题,我该如何克服这个问题?
为什么要创建一个新的字节数组然后忽略它?buffer调用之前的值GetBytes被替换为对GetBytes返回的新字节数组的引用.
但是,您不应期望字符串的UTF-8编码版本的字节长度与原始字符串的字符长度相同,除非它都是ASCII.U + 007F上的任何字符至少占用2个字节.
这里的大局是什么?你想要实现什么,为什么字节数组的长度对你很重要?
| 归档时间: |
|
| 查看次数: |
4403 次 |
| 最近记录: |