读取文件,将内容转成二进制字符串。
我的做法是: 
 FileStream   -> base64String   ->    (int)base64String   ->    binaryString(二进制字符串)   。   
 但是最后我根据String   的位长算出的文件大小总是大于原文件。   
 请各位给偶一个将文件内容转成二进制字符串的例子,并且告诉我上面的转换方法的错误之处。
------解决方案--------------------base64String要长三分之一的.正常.
------解决方案--------------------  StreamReader sr = new StreamReader(@ "c:\logo.gif ", System.Text.Encoding.Default); 
 byte[] b = System.Text.Encoding.Default.GetBytes(sr.ReadToEnd().ToCharArray());   
 这样就一样了.
------解决方案--------------------TO:base64String 的为什么要长1/3呢?   
 Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。  
------解决方案--------------------再说了,你用base64得到的byte跟原来的存储内容已经是千差万别了.
------解决方案--------------------4个8位的容量也是32位啊,为什么叫base64
------解决方案--------------------是对照表上的64个字符. 字节如果是0则A, 1-B-Za-z0-9+/ 64个字符
------解决方案--------------------TO:在高位置加 "00 " 不会出现数据丢失吗?     
 为什么会出现数据丢失呢?   
------解决方案--------------------可能楼主还是没有对Base64编码的原因,目的等搞清楚...   
 简单的说,有两个原因:   
 第一:加密,当然也只能达到 "一眼望去完全看不出内容 "的效果..   
 第二:传输,为了满足早期的 "Email只被允许传送ASCII字符 "的限制...   
 给你找了篇文章,虽然讲得也不是很详细,但我觉得也差不多了..   
 看看吧..   
 http://kjavaer.bokee.com/
------解决方案--------------------TO:那怎么把文件还原出来捏   
 有加密,当然也有对应的解密啊..   
 或者说有编码,当然也有对应的解码...
------解决方案--------------------我是初学者,看了这些。虽然不太懂,但是我想学了一定有用。顶