从C#应用程序执行Excel

我想用C#中的一个类打开一个文件,使用一个进程,位于一个directoy中,我问用户。

ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "EXCEL.EXE"; startInfo.Arguments = Here goes the directory I asked Process.Start(startInfo); 

问题是,当用户指定的文件的位置有一个空格时,excel认为我发送了两个相同的位置。 例如,用C:\ Users \ dj \ Desktop \ da ba excel尝试打开“C:\ Users \ dj \ Desktop \ da”作为一个文件,同时“ba”作为另一个文件。 我怎样才能发送一个位置,其中有一个空间的Excel,没有这个错误? 像C:\ Users \ dj \ Desktop \ daba这样的地址,没有空间,完美的工作。

尝试使用string文字

 startInfo.Arguments = @"C:\Users\un\Desktop\file with space" 

尝试引用你的path:

 startInfo.Arguments = "\"" + "C:\Users\dj\Desktop\da ba.xls" + "\""; 

蒂姆

这种方式工作

 "\"" + @dialog.FileName + "\"";