比如发端发送一个含1000个字符的串,我要比较收端接受的和发端的有无不同。当然若收端同样接收到1000个,那么逐个比较就知道哪些错了,若是收端多了或者少了,那么我怎么确定到底是多了或少了哪些字符呢??:?

解决方案 »

  1.   

    你把发送的东西序列化就可以了啊!这样设置断点让进程更进就可以看到两边数据是否一致了!
      private SerializeFile myMedia = new SerializeFile();
    写个序列化的类接口public class SerializeFile
    {
    //序列化文件名称
    public string FileName
    {
    get{return this.fileName }
    set{ this.filenName=value}}
    public string FileType
    {
    get{return this.fileType}
    set{ this.filenType=value}}
    public string FileData
    {
    get{return this.fileData }
    set{ this.filenData=value}}
    序列化之后就是调用了
         FileInfo EzoneFile = new FileInfo(files[i]);
            myMedia.FileName = EzoneFile.Name;
          myMedia.FileType = System.IO.Path.GetExtension(files[i]);
    myMedia.FileData=LoadFileData(fs);
    这样把数据序列化后你两边数据就是一直的就连位置也是一样的!
      

  2.   

    你不懂得话可以看看MSDN上的Serialize序列化
      

  3.   

    如果是这样比较字符串的话,即使数量相同,一个个对比也是有问题的,看你怎么定义错误了,有的是相邻的换了位置,有的可能是第一个位置丢失字符,最后一个地方增加了字符,这样你一个个比较,第一种情况两个错误,第二种情况全部错误了。这个比较让我想起DNA测序了
      

  4.   

    DNA损伤的改变类型点突变(point mutation)
      指DNA上单一碱基的变异。嘌呤替代嘌呤(A与G之间的相互替代)、嘧啶替代嘧啶(C与T之间的替代)称为转换(transition);嘌呤变嘧啶或嘧啶变嘌呤则称为颠换(transvertion)。
    缺失(deletion)
      指DNA链上一个或一段核苷酸的消失。
    插入(insertion)
      指一个或一段核苷酸插入到DNA链中。在为蛋白质编码的序列中如缺失及插入的核苷酸数不是3的整倍数,则发生读框移动(reading frame shift),使其后所译读的氨基酸序列全部混乱,称为移码突变(frame-shift mutaion)。
    倒位或转位
      (transposition) 指DNA链重组使其中一段核苷酸链方向倒置、或从一处迁移到另一处。
    双链断裂
      已如前述,对单倍体细胞一个双链断裂就是致死性事件。
      

  5.   

    不过我在想,用.net能检测出传输错误?网络传输不是分层的么,代码不乱写,不在接收缓冲区乱取数据,怎么可能会有错误?有错误也是网络超时啊,错误的数据早就自动重发了吧
      

  6.   

    是用pc连接了猫再到电台,由电台发出去,另一个电台接受后传到另一个猫再到另一个pc,是测中间的无线信道的错误
      

  7.   

    我始终觉得应用层面上不可能知道网络传输的数据到底是对是错,只有连接超时断开协议的底层才去处理这种问题,Tcp/ip协议可以用ping去看传输的丢包,你这个我就不知道是什么协议,有什么办法去发现