我使用的是Asp.Net MVC应用程序,Visual Studio 2013,SQL Server数据库
我系统的本地驱动器中有一个特定的位置,即c:/ Files / Exim_Files /,其中有很多excel(.xlsx)文件。 我想要从该位置获取特定文件并以相同/不同的名称以编程方式(不保存弹出窗口)保存它。 保存excel数据不应该丢失,文件应该是原样,只需要再次保存/保存。
请告诉我如何达到此要求?我做了很多谷歌研究,但找不到任何解决方案。 提前致谢。
请注意我使用的是虚拟机和虚拟机内部,未安装Microsoft Office。 因此,请让我知道在计算机中没有安装Microsoft Office的情况下运行的代码。 我只能在我的主机上使用Microsoft Office。
修改
在下面的代码中,我使用Aspose.Cells将excel文件从1个位置保存到另一个位置。
我从数组中的sharedLocation获取特定文件" l_strFileUploadPath"然后检查, 如果我从用户那里获得的文件存在于共享位置,那么我想保存/保存它 将文件放入不同的位置(在'字符串str'中定义)以及整个数据(假设我要导入数据) 同时将Excel保存在不同的位置。)
我面临的问题是,在C:驱动器中保存的文件不保存excel中存在的数据。 它似乎是在c:驱动器中创建一个新的excel文件,其名称相同(x-TECHNICAL_DIT_BUDV01_RV124_R01_2015_Test.xlsx)有2张。 1是表1'另一个是评估警告'片材。
请告诉我如何删除评估警告'片 根据我的代码,将共享驱动器中的确切文件(以及数据)保存到c:驱动器的方法是什么。
我错过了什么吗?请注意,我是第一次使用Aspose.Cells来获取和保存/保存文件从1个位置到另一个位置。
非常感谢任何帮助。
提前致谢。
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);
}
}
}
答案 0 :(得分:0)
对我来说,你只想复制文件。
File.Copy(@"c:\excel.xsl", @"c:\other\excel.xsl");
编辑评论:
我认为更改app.xml元数据很难,只需手动查看在save / saveAs期间对其进行的更改,然后尝试了解如何复制此行为并在该文件中以编程方式更改它。