现在需要构建出一个文件来,在把一个文件的内容添加到另一个文件后,旧文件中的中文到新文件中全变成了乱码,数字/字母正常现在的操作方法是:
        //复制文件内容的方法
        public static string AppendFile(string srcFileName, string aimFileName)
        {
            string result = "";
            StreamReader SR = null;
            try
            {
                string S;
                SR = File.OpenText(srcFileName);
                S = SR.ReadLine();
                while (S != null)
                {
                    AppendToFile(aimFileName, S);
                    //Console.WriteLine(S); 
                    S = SR.ReadLine();
                }
            }
            catch (Exception e)
            {
                string s = e.ToString();
                throw;
            }
            finally
            {
                if (SR != null)
                    SR.Close();
            }
            return (result);
        }请问要如何才能让原来文件中的内容不更改的添加到新文件中呢?

解决方案 »

  1.   

    使用SreamWriter进行控制编码
    StreamReader,StreamWriterStreamWriter sw = new StreamWriter(path,Encoding.Default);
      

  2.   

    谢谢net_lover(【孟子E章】) 
    您能指导一下我该怎么修改我的方法吗?
      

  3.   

    SR = File.OpenText(srcFileName);
    换成 SR = new StreamWriter(srcFileName,Encoding.Default);
      

  4.   

    winner2050(winner)
    这样改不行呢~
      

  5.   

    搞定了,谢谢!
            //复制文件内容的方法
            public static string CopyFile(string srcFileName, string aimFileName)
            {
                string result = "";
                StreamReader SR = null;
                try
                {
                    string S;
                    SR = new StreamReader(srcFileName, Encoding.Default);// File.OpenText(srcFileName);
                    S = SR.ReadLine();
                    while (S != null)
                    {
                        AppendToFile(aimFileName, S);
                        //Console.WriteLine(S); 
                        S = SR.ReadLine();
                    }
                }
                catch (Exception e)
                {
                    string s = e.ToString();
                    throw;
                }
                finally
                {
                    if (SR != null)
                        SR.Close();
                }
                return (result);
            }