\357\274\232这个是什么编码方式?解码后的字符串是什么?

juqiang 2008-05-19 03:22:15
貌似是UTF8,解码后是一个汉字,但是我解不出来,哪位高人帮忙看看?谢谢!

我这么做,没有结果:
byte[] test = new byte[] { 0x65, 0x01, 0x12, 0x01, 0xe8, 0x00};
byte[] test2 = new byte[] { 51, 53, 55, 50, 55, 52, 50, 51, 50 };

foreach (EncodingInfo encoding in Encoding.GetEncodings())
{
System.Diagnostics.Trace.WriteLine(encoding.GetEncoding().GetString(test));
}
...全文
891 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
juqiang 2008-05-19
  • 打赏
  • 举报
回复
结帐,多谢了!!!
王集鹄 2008-05-19
  • 打赏
  • 举报
回复
[img=http://p.blog.csdn.net/images/p_blog_csdn_net/zswang/%E8%AF%BB%E4%B9%A6.gif]图[/img]
“\357\274\232”
如果表示byte那么应该最大到255就好了。。。可357、274都是大于255的。
再分析一下,这些数字都没有大过8的,所以我当时就猜想是8进制,就等楼主确认,否则写代码也是白搭。

参考如下代码:
public string Encode(string ACode)
{
List<byte> vBuffer = new List<byte>();
foreach (string vNumber in ACode.Split(new char[] { '\\' },
StringSplitOptions.RemoveEmptyEntries))
vBuffer.Add(Convert.ToByte(vNumber, 8));
return Encoding.UTF8.GetString(vBuffer.ToArray());
}

private void button1_Click(object sender, EventArgs e)
{
Console.WriteLine(Encode(@"\357\274\232"));
}


juqiang 2008-05-19
  • 打赏
  • 举报
回复
按照Unicode解码,:是0x1a, 0xff,但是0xff不是一个合适的utf-8字符,咋搞?
juqiang 2008-05-19
  • 打赏
  • 举报
回复
据说就是冒号。。。请详述,老大!

根据RFC这个介绍:
UCS-4 range (hex.) UTF-8 octet sequence (binary)
0000 0000-0000 007F 0xxxxxxx
0000 0080-0000 07FF 110xxxxx 10xxxxxx
0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx

0001 0000-001F FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
0020 0000-03FF FFFF 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
0400 0000-7FFF FFFF 1111110x 10xxxxxx ... 10xxxxxx


得出的不正确,因为前两个数字都大于255,楼上怎么解决的?
王集鹄 2008-05-19
  • 打赏
  • 举报
回复
如果结果是:“:”那我再详细说说。。。
juqiang 2008-05-19
  • 打赏
  • 举报
回复
\357\274\232

就是这个东西

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧