[英]Get and Save particular Excel file in same location using C#
我正在使用 Asp.Net MVC 應用程序、Visual Studio 2013、SQL Server 數據庫
我系統的本地驅動器中有一個特定位置,即 c:/Files/Exim_Files/ ,其中有很多 excel(.xlsx) 文件。 我想從該位置獲取特定文件並以相同/不同名稱以編程方式將其保存(不彈出保存)在同一位置。 保存excel數據時不應該丟失,文件應該保持原樣,只是我需要再次保存/另存為。
我怎樣才能達到這個要求?
請注意,我正在使用虛擬機並在虛擬機內部:未安裝 Microsoft Office。 因此,代碼必須在機器中沒有安裝 Microsoft Office 的情況下才能工作。 我只能在我的主機上使用 Microsoft Office。
在下面的代碼中,我使用 Aspose.Cells 將 Excel 文件從一個位置保存到另一個位置。
我從數組“l_strFileUploadPath”中的 sharedLocation 獲取特定文件,然后檢查我從用戶獲取的文件是否存在於共享位置,然后我想將該文件保存/另存為不同的位置(在“字符串 str”中定義) ) 以及整個數據(比如我想在將 Excel 保存在不同位置的同時導入數據)。
我面臨的問題是,保存在 C: 驅動器中的文件沒有保存 Excel 中存在的數據。 似乎是在 c: 驅動器中創建一個新的 excel 文件,同名 (x-TECHNICAL_DIT_BUDV01_RV124_R01_2015_Test.xlsx) 有 2 張紙。 1 是“表 1”,另一個是“評估警告”表。
根據我的代碼,如何刪除“評估警告”表以及將確切文件(以及數據)從共享驅動器保存到 c: 驅動器的方法是什么。
這是第一次使用 Aspose.Cells 將文件從一個位置獲取並保存/另存為另一個位置。
protected void getFileAndSave()
{
string[] l_strFileUploadPath = Directory.GetFiles("//181.184.11.435/share//Temp/New folder");
foreach (var filename in l_strFileUploadPath)
{
string fileName = Path.GetFileName(filename);
string p_filename = "x-TECHNICAL_DIT_Test.xlsx"; //this is the file I am getting from user
if (fileName == p_filename)
{
//-- Using Aspose.Cells
Workbook wb = new Workbook();
Worksheet worksheet = wb.Worksheets["Sheet1"];
worksheet.Name = "Technical Data";
//Save workbook with export cell as true
OoxmlSaveOptions opts = new OoxmlSaveOptions();
opts.ExportCellName = true;
wb.Save(str + file, opts);
}
}
}
對我來說,您似乎只想復制文件。
File.Copy(@"c:\excel.xsl", @"c:\other\excel.xsl");
編輯評論:
我認為很難更改 app.xml 元數據,而不僅僅是手動查看在保存/另存為期間所做的更改,然后嘗試了解如何復制此行為並在該文件中以編程方式更改它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.