2009-07-05 3 views
1

Я хочу открыть файл из класса в C#, используя Process, расположенный в directoy, я спросил пользователя.Выполнение excel из приложения C#

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

Проблема, в том, что, когда местоположение файла, указанного пользователем имеет место «,», первенствует думает, что я посылаю два sepparate места. Например, с C: \ Users \ dj \ Desktop \ da ba excel пытается открыть «C: \ Users \ dj \ Desktop \ da» как один файл и в то же время «ba» в качестве другого файла. Как я могу отправить местоположение в excel, у которого есть пробел, без этой ошибки? с добавлением, например C: \ Users \ dj \ Desktop \ daba, без пробела он отлично работает.

ответ

2

Попробуйте использовать строковый литерал

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

Try процитировать ваш путь:

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

Tim

0

Этот способ работает

"\"" + @dialog.FileName + "\""; 
Смежные вопросы