cmd copy的使用

使用cmd进行文件合并速度很快,比常规的打开文件流写入要快很多。

如果是将a文件合并到b文件中(a,b都已存在),那么在b文件的结尾会多出来一个特殊字符,不知道如何去掉。但是如果将a、b文件合并到一个新文件c中就不存在这个问题,一直未解决,暂时用临时文件进行合并,合并完成后删除即可。

//合并文件
            Process proc = new Process();
            proc.StartInfo.CreateNoWindow = true;
            proc.StartInfo.FileName = "cmd.exe";
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.RedirectStandardError = true;
            proc.StartInfo.RedirectStandardInput = true;
            proc.StartInfo.RedirectStandardOutput = true;

            //绑定执行完成消息监听
            proc.EnableRaisingEvents = true;
            proc.Exited += new EventHandler(proc_Exited);
           
            proc.Start();

            //先合并tmp和varchar文件到中间文件(由于文件合并后结尾有个特殊字符无法取消,合并到中间文件不存在这个问题)
            proc.StandardInput.WriteLine("copy c:\1.txt+c:\2.txt c:\3.txt &exit");
            
            proc.WaitForExit();
            proc.Close();
注:WirteLine方法后面需要加 
&exit

否则无法正常监听到执行结束方法。

猜你喜欢

转载自blog.csdn.net/study_gis/article/details/79356878
cmd