str*_*oir 5 asp.net asp.net-mvc excel npoi asp.net-mvc-4
这是我第二次与NPOI打交道.我正在从这样的模板excel文件创建工作簿.
string dldir = AppDomain.CurrentDomain.BaseDirectory + "Download\\excel\\";
string uldir = AppDomain.CurrentDomain.BaseDirectory + "Upload\\default_export_file\\";
string filename = DateTime.Now.ToString("yyyy-M-d") + "_" + user.first_name + "_" + query.default_export_filename;
System.IO.File.Delete(Path.Combine(dldir, filename));
//System.IO.File.Copy(Path.Combine(uldir, query.default_export_filename), Path.Combine(dldir, filename));
HSSFWorkbook hssfwb;
using (FileStream file = new FileStream(Path.Combine(uldir, query.default_export_filename), FileMode.Open, FileAccess.ReadWrite))
{
hssfwb = new HSSFWorkbook(file);
}
MemoryStream mstream = new MemoryStream();
hssfwb.Write(mstream);
FileStream xfile = new FileStream(Path.Combine(dldir, filename), FileMode.Create, System.IO.FileAccess.Write);
byte[] bytes = new byte[mstream.Length];
mstream.Read(bytes, 0, (int)mstream.Length);
xfile.Write(bytes, 0, bytes.Length);
xfile.Close();
mstream.Close();
Run Code Online (Sandbox Code Playgroud)
但是当我检查创建的文件时.它什么都没有.大小是正确的.但内容只是空白.我也无法在MS Excel中打开它.我重复并跟踪代码,但我似乎无法找到导致它只写空白的原因.
任何人都知道为什么会这样
仅供参考:我正在使用从NuGet Gallery安装的VS 2010,ASP.Net MVC 4和NPOI 1.2.5
Chu*_*ang 12
这个怎么样:
MemoryStream mstream = new MemoryStream();
hssfwb.Write(mstream);
FileStream xfile = new FileStream(Path.Combine(dldir, filename), FileMode.Create, System.IO.FileAccess.Write);
byte[] bytes = new byte[mstream.Length];
mstream.Read(bytes, 0, (int)mstream.Length);
xfile.Write(bytes, 0, bytes.Length);
xfile.Close();
mstream.Close();
Run Code Online (Sandbox Code Playgroud)
改性:
FileStream xfile = new FileStream(Path.Combine(dldir, filename), FileMode.Create, System.IO.FileAccess.Write);
hssfwb.Write(xfile);
xfile.Close();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12136 次 |
| 最近记录: |