| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1020 人关注过本帖
标题:c#中编码与解码的奇怪现象??
只看楼主 加入收藏
asxinyu
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-10-14
收藏
 问题点数:0 回复次数:0 
c#中编码与解码的奇怪现象??
最近做一个关于用C#实现一个加密算法。遇到了一个很大的麻烦,找了几天终于发现了错误的根源,但是我没有办法解释,所以也没有办法解决啊!说简单一点。就是下面的这段代码。将byte数组TestByte先用unicode格式编码,然后又用unicode格式解码,按理说,解码的结果应该和TestByte数组一样,可结果却不是这样的,问题出在倒数第2个字符编码上面。也及时数组的倒数第3、4个数字上面。可以运行看一下。实在不知道是为什么啊?请高手指点

using System;
using System.Text;

public class SamplesEncoding  {

   public static void Main()
   {
    Encoding UTF=Encoding .Unicode ;
    UnicodeEncoding unicode=new UnicodeEncoding ();
    byte[] TestByte= {32,37,15,83,194,117,17,168,33,81,52,41,68,155,178,19,49,7,61,220,255,84};
    string str=unicode.GetString(TestByte);
    byte [] test=UTF .GetBytes (str );
    foreach (byte i in TestByte )
   {
    Console .Write ("{0},",i );
    }
    Console .WriteLine ();
    foreach (byte i in test )
   {
    Console .Write ("{0},",i );   
     }   
     Console .ReadKey ();
   }  
}

运行结果如下:

32,37,15,83,194,117,17,168,33,81,52,41,68,155,178,19,49,7,61,220,255,84,
32,37,15,83,194,117,17,168,33,81,52,41,68,155,178,19,49,7,253,255,255,84,

[61,220]与[253,255]不一样啊??
搜索更多相关主题的帖子: 现象 解码 编码 
2008-03-21 19:40
快速回复:c#中编码与解码的奇怪现象??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031993 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved