像这种文件,文件格式是.bump,以字符数组byte[]的形式往文件里存入16进制数,为了区分每次插入的消息,请问怎么在一行插不满的情况下,换行插入到下一行?就是第一条消息和第二条消息能一眼看出来,跪求大神!!!!
我的代码是:
byte[] inMsgData = new byte[68]{
                      0x00 ,0x00 ,0x00, 0x00 ,0x02, 0x04, 0x0b,0x70, 0x00,0x00, 
                      0x26 ,0x00 ,0x00, 0x00, 0x00 ,0x00 ,0x08 ,0x00 ,0x00 ,0x00 ,
                      0x00, 0x00 ,0x04, 0x00, 0x00 ,0x00, 0x02,0x00, 0x00 ,0x00 ,
                      0x88, 0x88, 0x88 ,0x00 ,0x08 ,0x00 ,0x00 ,0x00 ,0x05 ,0x00 ,
                      0x00,0x00, 0x02 ,0x00 ,0x00 ,0x00  ,0x89 ,0x88 ,0x88 ,0x00 ,
                      0x08 ,0x00 ,0x00 ,0x00 ,0x05 ,0x00 ,0x00 ,0x00 ,0x02 ,0x00 ,
                      0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, 0x00, 0x00
              };
 if (File.Exists(@"d:\L1.bump"))
                            {
                                FileStream fileStream = new FileStream(@"d:\L1.bump", FileMode.Append, FileAccess.Write);
                                fileStream.Write(inMsgData, 0, inMsgData.Length);
                                fileStream.Close();
                            }
                            else
                            {
                                System.IO.File.WriteAllBytes(@"d:\L1.bump", inMsgData.ToArray());                            }

解决方案 »

  1.   

    在你生成byte字节数组的时候,你想在哪里换行,就加上换行符#10#13,这样就可以了。 
      

  2.   

    就是往bump文件里追加数据流的时候,为了和以前存的数据区分开。要求每次追加之前都换行,#10#13这个是什么意思?还有\r\n不是在文本文件里用的吗?我这个是往16进制文件里存数据。
      

  3.   

    这个保存的是16进制文件,用记事本打开是乱码的,只能用ultra Edit打开,就显示我插的那张图片,"为了和以前存的数据区分开。要求每次追加之前都换行"就是说我这个文件时用来存消息的,每次插入的字节数组都不一样,我写的那个只是随便举了个字节数组的例子,实际中是不同的消息传过来,每次都往.bump文件里存,但是每次存之前需要一个换行,就是不能和上一个消息在同一行。不知道这种文件里能不能换行?
      

  4.   

    windows换行符\r\n 两个字节追加到消息后面写进文件
    只不过你这样简单地将它当作数据分隔符来用,是会有问题的。假如别人的发的消息里本身就分行了?提取的时候就会把它拆分成几条了