StreamWriter sw = new StreamWriter(fto, Encoding.ASCII);我用这个方式的写文本文档,但只能是0~128的ASCII码正确的写入文档,但是129~255的就不能成功输入一旦将129~255的写入,就会转换回0~128的,因为我是用来解密文件的,一旦写入不是密文,解密出来就肯定是错误的请问如果我要正确写入129~255的ASCII码,该怎么办呢?请高手指点!!!!谢谢~~

解决方案 »

  1.   

    补充一下
    用UTF-8可以写进这个范围的ASCII码,但是会产生BOM(Byte order )...能不产生BOM么?谢谢
      

  2.   

    既然加密解密, 你的目标是字节流, 也就是 byte[],
    直接在 stream 和 byte[] 之间 read write 即可.
    若要使用 reader / writer ,
    请使用 encoding 无关的 binary reader / writerstream reader / writer 是继承自 Text reader / writer , 
    是用于文本的.
      

  3.   

    用BinaryWriter写,生成的文件后缀写成txt即可.
      

  4.   

    解决了,其实是跟用StreamWriter或者BinaryWrite没多大关系,关键我用于存储密文的数组时byte[],只要换回Byte[]类型就可以了看来有时间还是要补补基础。可能我上面说得不详细,因为我也没想过问题会出项在一个数组类型上但是很感谢各位的回复,谢谢你们~~