第一个文本框输入要改变内码文件的路径。一个下拉框选择改变内码的格式。
如:"UTF-8","Shift-jis","GBK","Big5","EUC-JP"
我写了个转换内码的代码,但是报错。错误提示是:在ReadAllBytes里面存在无效参数。求指点一二。
//找出文件路径,选择默认内码.用数组保存一个转换成功的文件
byte [] datas = System.IO.File.ReadAllBytes("d:\text\1.txt",Encoding.GetEncoding("GBK"));
//替换原有内码(把GBK改成UTF-8).最后一个参数为在之前转换成功的文件
byte []result = Encoding.Convert(Encoding.GetEncoding("GBK"),Encoding.GetEncoding("UTF-8"),datas);
//保存路径,对以转换完成的文件进行保存.第一个参数为路径,第二个参数为文件,
System.IO.File.WriteAllBytes("D:\TEMP\2.TXT",result);
我已经写的很详细了,请帮我看一看,应该怎么做

解决方案 »

  1.   

    你好,我想你需要检查一下你程序中调用的framework中的System.IO.File.ReadAllBytes方法是否是该方法的某一个重载方法,参数形式是否满足其中的要求
      

  2.   

    原来ReadAllBytes方法中没有2个参数,只有一个文件路径的参数,现在问题又来了,他不报错,但是不成功,然后Winform窗体自动关闭。怎么回事?
      

  3.   

    System.IO.File.WriteAllBytes("D:\TEMP\2.TXT",result);
    这个D:\TEMP\2.TXT路径被拒绝是为什么?