我現(xiàn)在想在C#中打開特定的文件,并且指定特定的打開方式。下面是代碼1.ProcessStartInfo psi = new ProcessStartInfo(@"D:\Program Files\Foxit Software\Foxit Reader\Foxit Reader.exe");psi.UseShellExecute = false;psi.Arguments = @" d:\a a\H3C實驗手冊.pdf";Process.Start(psi);2.System.Diagnostics.Process.Start(@"D:\Program Files\Foxit Software\Foxit Reader\Foxit Reader.exe", @" d:\a a\H3C實驗手冊.pdf");這兩個代碼實現(xiàn)的是同一個效果,都是指定D盤 “a a”文件夾(注意a a中間有個空格)下的“H3C實驗手冊.pdf”文件用Foxit Reader.exe 打開。但是上面指定文件的路徑中有個“空格”,如果沒有在別的沒有空格的路徑下打開文件就可以,若文件路徑中有空格的話,就不行了。自己的分析:上面的程序實際上就是用命令行參數(shù)來啟動程序,而命令行參數(shù)是用空格開區(qū)分不同的參數(shù),所以文件路徑中有空格后,這個參數(shù)是被截斷了。
2 回答

POPMUISE
TA貢獻1765條經(jīng)驗 獲得超5個贊
你不帶@,直接用\\轉義是一下
Process myProcess = new Process();
myProcess.StartInfo.FileName ="D:\\a a\\123 456.docx";
myProcess.StartInfo.Verb = "Print";
myProcess.StartInfo.CreateNoWindow = true;
myProcess.Start();
上面的代碼測試是通過的
- 2 回答
- 0 關注
- 650 瀏覽
添加回答
舉報
0/150
提交
取消