我正在尝试重命名Excel工作簿。目前我只是从程序中保存文件名,但我不希望出现询问我是否要覆盖已存在文件的消息,这是我目前的问题。使用临时文件名可能不是解决此问题的方法,因此如果有更好的建议,请通知我。
如果没有excelWorkbook.SaveAs("Test Name");
行,该文件将提供一个随机的临时名称。
private void excelfunc()
{
string tempPath = System.IO.Path.GetTempFileName();
System.IO.File.WriteAllBytes(tempPath, Properties.Resources.excelResource);
Excel.Application excelApplication = new Excel.Application();
Excel._Workbook excelWorkbook;
excelWorkbook = excelApplication.Workbooks.Open(tempPath);
excelWorkbook.SaveAs("Test Name");
excelApplication.Visible = true; // at this point its up to the user to save the file
}
UPDATE:我添加了一行内容来覆盖现有文件,但现在我收到了一条错误消息,内容是:“系统.IO. IO异常:'无法创建已存在的文件。”
private void excelfunc()
{
string tempPath = System.IO.Path.GetTempFileName();
MessageBox.Show(tempPath);
System.IO.File.WriteAllBytes(tempPath, Properties.Resources.excelResource);
Excel.Application excelApplication = new Excel.Application();
Excel._Workbook excelWorkbook;
File.Move(tempPath, "Test Name");
excelWorkbook = excelApplication.Workbooks.Open(tempPath);
excelApplication.Visible = true; // at this point its up to the user to save the file
}
1条答案
按热度按时间ma8fv8wu1#
移动(“旧文件名”,“新文件名”);