У меня есть код, который преобразует файл .CSV в файл .XLSX. Преобразование идет хорошо, но метод WorkBook.SaveAs (@ "file.xslx"), похоже, сохраняет файл только в C: \ Users [MyName] \ Documents \ file.xlsx. Когда я использую Excel.Application.GetSaveAsFileName(), он по умолчанию использует C: \ Users [MyName] \ Documents with A Save As.Как установить каталог для Excel.WorkBook.SaveAs()?
Кроме того, установка Excel.Application.DefaultFilePath, кажется, не поможет, если я явно не оговорен F: .........
У меня есть относительный набор рабочего каталога, где a.csv является читать:
using Excel = Microsoft.Office.Interop.Excel;
StreamReader a = new StreamReader(@"a.csv");
var CSVContent = new List<string[]>();
Excel.Application excel = new Excel.Application();
excel.DefaultFilePath = @"Output\"; //doesn't do anything
Excel.Workbook workBook = excel.Workbooks.Add();
Excel.Worksheet sheet = workBook.ActiveSheet;
while (!a.EndOfStream)
{
string read = a.ReadLine();
CSVContent.Add(read.Split(','));
}
for (int i = 0; i < CSVContent.Count; i++) //write List contents to xlsx Line by Line
{
string[] csvLine = CSVContent[i];
for (int j = 0; j < csvLine.Length; j++)
{
sheet.Cells[i + 1, j + 1] = csvLine[j]; //Cells begin at 1 in Excel
}
}
var b = excel.GetSaveAsFilename("a.xlsx");
workBook.SaveAs(b);
workBook.Close();
Как получить workbook.SaveAs() для сохранения в относительном рабочем каталоге решения?