文件编码导致 打开和写入的问题
代码片断:   
                                                 FileStream   myStream   =   (FileStream)   ofdAttachFile.OpenFile(); 
                                                 if   (myStream   !=   null) 
                                                 {                                                               
                                                             byte[]   bFile   =   new   byte[myStream.Length]; 
                                                             myStream.Read(bFile,   0,   (int)myStream.Length);   
                                                             UnicodeEncoding   ue   =   new   UnicodeEncoding(); 
                                                             string   fileContent=   ue.GetString(bFile);   
                                                                byte[]   bFile2   =   ue.GetBytes(fileContent); 
 }   
 我从一个文件中读取数据到byte[]   bFile,然后转化成string   fileContent,但是 
 fileContent再反过来转化成byte[]   bFile2   的时候,两个byte[]   变量bFile,bFile2 
 就不同了,主要表现为长度不同。   
 由于对这个地方从原理上不是很熟悉,所以还是不能理解为什么会出现这个问题。
------解决方案--------------------先看看内容对不对,然后长度差多少?
------解决方案--------------------线索是要自己发现的,你用十六进制编辑器对比一下就可以了。
------解决方案--------------------可能是编码问题。
------解决方案--------------------曾经遇到过 
 FileStream myStream = (FileStream) ofdAttachFile.OpenFile(); 
 if (myStream != null) 
 { 
    byte[] bFile = new byte[myStream.Length];    
    // 
    //上一行开辟的数组,大于文件的长度 
    //可能是:如果流长度=n,则数组长度==((int)(n/256 + 1)) * 256 
    //我将文件读到串,再将其写到文件,发现文件的尾部多了一些空格 
    // 
    myStream.Read(bFile, 0, (int)myStream.Length);   
    UnicodeEncoding ue = new UnicodeEncoding(); 
    string fileContent= ue.GetString(bFile); 
    byte[] bFile2 = ue.GetBytes(fileContent); 
 }