从C#应用程序执行excel

从C#应用程序执行excel,c#,excel,process,C#,Excel,Process,我想用一个进程从C#中的一个类中打开一个文件,该进程位于我问用户的目录中 ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "EXCEL.EXE"; startInfo.Arguments = Here goes the directory I asked Process.Start(startInfo); 问题是,当用户指示的文件位置有一个空格“”时,excel认为我发送了两个单独的位置。例如,

我想用一个进程从C#中的一个类中打开一个文件,该进程位于我问用户的目录中

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这样的地址,如果没有空格,它就可以正常工作。

尝试使用字符串文字

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

尝试使用字符串文字

startInfo.Arguments = @"C:\Users\un\Desktop\file with space"
尝试引用您的路径:

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

试着引用你的路径:

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

这种方法有效

"\"" + @dialog.FileName + "\"";
这种方法有效

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