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

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