Я пытаюсь создать файл csv из файла excel с помощью MS Excel Interop в моем приложении C#/Winforms.Получение ошибки при вызове метода SaveAs
Получаем эту ошибку в методе SaveAs в коде ниже.
«Файл не может быть доступен. Попробуйте выполнить одно из следующих действий:
• Убедитесь, что указанная папка существует. • Убедитесь, что папка, содержащая файл , не поддерживается только для чтения. • Убедитесь, что имя файла не содержит ни одного из следующих символов: <>? []: | или * • Убедитесь, что имя файла/путь не содержит более чем 218 characters.'z
Я попытался установить только для чтения, чтобы ложно (...) метод рабочей книги Open в соответствии с: Problem saving excel file after inserting data, но по-прежнему получают ту же ошибку.
В моем коде путь к csv был: C: \ Если я изменю путь к файлу csv на C: \ SomeFolder или какой-то общий путь UNC, то я не получу эту ошибку.
Пожалуйста, советую.Сообщить о некоторых проблемах с приводом C?
Heres код:
xlApp = new Microsoft.Office.Interop.Excel.Application();
xlApp.DisplayAlerts = false;
xlApp.Visible = false;
wbkSrc = xlApp.Workbooks.Open(m_sSrcFil,
Type.Missing, false, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
wstSrc = (Worksheet)wbkSrc.Worksheets[sSrcSht];
//wstSrc.Activate();
rngWork = wstSrc.Cells.get_Range("H:H", System.Reflection.Missing.Value);
rngWork.NumberFormat = "General";
dteTmpDate = Convert.ToDateTime(m_sBusDate);
sTmpFileName = m_sSrcFil.Substring(0, m_sSrcFil.IndexOf(".")) + "_" +
m_sUserName + "_" + dteTmpDate.ToString("yyyy_MM_dd") + ".Csv";
wstSrc.SaveAs(sTmpFileName, XlFileFormat.xlCSV, Type.Missing,
Type.Missing, true, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
Походит разрешений папки выпуска – Variant
Привет Давид, спасибо за ваше имя inputs.The файла является: "22010_Sep11TestReport_rtsim36_2011_09_30 .csv». Это имя файла совпадает, если изменить путь к CSV-файлу на какой-то другой путь, например C: \ SomeFolder, тогда я не получу эту ошибку, и файл csv будет сохранен на компьютере. Таким образом, проблема заключается не в самом имени файла хотя сообщение об ошибке похоже на это. – Jimmy