c# – 用于从文件中读取字符串的编码?
发布时间:2020-12-16 01:43:56 所属栏目:百科 来源:网络整理
导读:我正在解析包含字符串的文件(我不生成).字符串总是以2个字节开头,告诉我后面的字符串的长度. 例如: 05 00 53 70 6F 72 74 将会: Sport 使用C#BinaryReader,我使用以下方法读取字符串: string s = new string(binaryReader.ReadChars(size)); 有时会出现奇
我正在解析包含字符串的文件(我不生成).字符串总是以2个字节开头,告诉我后面的字符串的长度.
例如: 05 00 53 70 6F 72 74 将会: Sport 使用C#BinaryReader,我使用以下方法读取字符串: string s = new string(binaryReader.ReadChars(size)); 有时会出现奇怪的时髦角色,这似乎会推动流的位置超出应有的位置.例如: 0D 00 63 6F 6F 6B 20 E2 80 94 20 62 6F 6F 6B 应该: cook - book 虽然它读得很好,但流最终会比它应该延伸两个字节?! (然后会弄乱其余的解析.) 我猜它与中间的0xE2有关,但我不确定为什么或如何处理它. 任何建议都非常感谢! 解决方法
我的猜测是字符串是用UTF-8编码的. 3字节序列E2 80 94对应于单个Unicode字符U 2014(EM DASH).
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |