关于中文解码问题

不訴離傷 2013-11-15 07:27:14

public String BodyRTF
{
get
{
//get value for the RTF compressed MAPI property
byte[] rtfBytes = this.GetMapiPropertyBytes(OutlookStorage.PR_RTF_COMPRESSED);

//return null if no property value exists
if (rtfBytes == null || rtfBytes.Length == 0)
{
return null;
}

//decompress the rtf value
rtfBytes = CLZF.decompressRTF(rtfBytes);

//encode the rtf value as an ascii string and return
string a1 = Encoding.Unicode.GetString(rtfBytes);
string a2 = Encoding.Default.GetString(rtfBytes);
string a3 = Encoding.UTF8.GetString(rtfBytes);
return Encoding.ASCII.GetString(rtfBytes);
}
}


无论用哪种方式,中文都是无法解码的。有没有好的建议呢。
font-family里的是中文依旧是\'bc\'d0\'b7\'a2\'c5\'e9 ,用GB2132或者BIG5也无解。
<span style='font-family:\'bc\'d0\'b7\'a2\'c5\'e9;color:#1F497D'>
...全文
156 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
不訴離傷 2013-11-17
  • 打赏
  • 举报
回复
这个没解了。。因为RTF文件本身就只能用ANSI,不支持中文。所以源码的中文显示不出来,不过在word等里面是可以显示中文的。
豆-芽-菜 2013-11-15
  • 打赏
  • 举报
回复
编码格式试试GB2312
tcmakebest 2013-11-15
  • 打赏
  • 举报
回复
本身就不是正规的编码,需要先拔除杂草。
拂晓的镇魂歌 2013-11-15
  • 打赏
  • 举报
回复
是不是return错了
不訴離傷 2013-11-15
  • 打赏
  • 举报
回复
各位:
string a1 = Encoding.Unicode.GetString(rtfBytes);
string a2 = Encoding.Default.GetString(rtfBytes);
string a3 = Encoding.UTF8.GetString(rtfBytes);
return Encoding.ASCII.GetString(rtfBytes);

以上编码,包括UTF8,unicode,简繁体编码都试过了,都是一样的!
Teln_小凯 2013-11-15
  • 打赏
  • 举报
回复
引用 1 楼 junlinfushi 的回复:
UTF-8
+1
junlinfushi 2013-11-15
  • 打赏
  • 举报
回复
UTF-8

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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