C#创建excel并释放资源
using System;
using Microsoft.Office.Interop.Excel;
using Excel = Microsoft.Office.Interop.Excel;
using System.IO;
using System.Windows.Forms;
using System.Runtime.InteropServices; public class Class2
{
private string filePath;
private Excel.Application app = null;
private Workbook wb;
private Worksheet ws;
private Workbooks wbs;
/// <summary>
/// 创建
/// </summary>
/// <param name="filePath"></param>
public void create(string filePath)
{
this.filePath = filePath;
app = new Excel.Application();
if (app == null)
{
Out.show("无法创建Excel对象,可能您的电脑未安装Excel!");
app.Quit();
GC.Collect();
return;
}
try
{
app.Visible = false;
app.Application.DisplayAlerts = false;
}
catch (Exception e)
{ }
wbs = app.Workbooks;
wb = wbs.Add(Excel.XlWBATemplate.xlWBATWorksheet);
ws = wb.Worksheets[] as Worksheet;
} public void Write()
{
ws.Cells[, ] = "hello";
}
/// <summary>
/// 保存文件
/// </summary>
public void Save()
{
while (File.Exists(filePath))
{
try
{
File.Delete(filePath);
break;
}
catch (Exception e)
{
if (MessageBox.Show("该文件已被占用,请关闭", "提示", MessageBoxButtons.RetryCancel)
!= DialogResult.Retry)
{
break;
};
}
}
wb.Saved = true;
wb.SaveAs(filePath);
Kill();
}
[DllImport("User32.dll", CharSet = CharSet.Auto)]
public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);
/// <summary>
/// 杀掉对应进程,释放资源
/// </summary>
public void Kill()
{
int processId;
GetWindowThreadProcessId(new IntPtr(app.Hwnd), out processId);
Out.show(processId.ToString());
System.Diagnostics.Process.GetProcessById(processId).Kill();
}
}
C#创建excel并释放资源的更多相关文章
- 使用SPIRE.XLS来创建Excel 工作簿
使用SPIRE.XLS来创建Excel 工作簿 概要 最近在研究 .NET 控件,使用这些控件在程序中可以快速低成本实现功能. 在这一篇中我们使用的控件是Spire.XL ...
- 使用NPOI创建Excel
一.NPOI 函式庫: NPOI 函式庫檔案有七個,NPOI 函式庫可以在 http://npoi.codeplex.com 中下載,分別是: NPOI.DLL:NPOI 核心函式庫. NPOI.DD ...
- l创建Excel文件
最近的项目中遇到需要将List<Map<String,String>>存储到Excel文件中,为满足此需求设计实现了如下函数: /** * 将MapList转化为Excel文件 ...
- NPOI 2.0 创建Excel文件
如果只是简单的处理的话,只需要引用下载压缩包里的 NPOI.dll (office 2003)或 NPOI.OOXML.dll (office 2007) 文件而已. using System; us ...
- Java Struts2 POI创建Excel文件并实现文件下载
Java Struts2 POI创建Excel文件并实现文件下载2013-09-04 18:53 6059人阅读 评论(1) 收藏 举报 分类: Java EE(49) Struts(6) 版权声明: ...
- C#创建Excel文件并将数据导出到Excel文件
工具原料: Windows 7,Visual Studio 2010, Microsoft Office 2007 创建解决方案 菜单>新建>项目>Windows窗体应用程序: 添加 ...
- java使用poi创建excel文件
import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFRow;import or ...
- VSTO之旅系列(二):创建Excel解决方案
原文:VSTO之旅系列(二):创建Excel解决方案 本专题概要 引言 创建VSTO项目 Excel对象模型 创建Excel外接程序 创建Excel文档级自定义项 小结 一.引言 也许很多朋友都没有听 ...
- NPOI 创建Excel,数据读取与写入
<1> using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...
随机推荐
- HTTPS数据包抓取的可行性分析
HTTPS数据包抓取的可行性分析 相信只要是从事软件开发, 多多少少都会涉及到数据包的抓取.常见的有网页数据抓取(即网页爬虫),应用程序数据包抓取等.网页数据抓取比较简单, 在chrome下可以非常方 ...
- Handle/Body pattern(Wrapper pattern)
Handle Body Pattern 一些设计模式,通过一系列非直接的间接的方式(这种间接的方式,可称其为 handle(把手)),完成接口与实现(实现可称为 body(主体))的分离 Handle ...
- luogu 3388 【模板】割点(割顶)
点双. #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> ...
- E20170603-ts
sanitize vt. 净化; 进行消毒; 使清洁; 审查; omission n. 遗漏; 疏忽; 省略,删节; [法] 不履行法律责任; separator n. 分离器,分离装置; 防胀 ...
- P3343 [ZJOI2015]地震后的幻想乡
传送门 给积分大佬跪了 再给状压大佬也跪了 //minamoto #include<bits/stdc++.h> #define rint register int #define ll ...
- 【第三届强网杯】write up
一,鲲or鳗orGame 从浏览器里拿到game.gb 用 VisualBoyAdvance ,搜索内存变量,然后改变量就完事了,但是改变量他们说直接利用添加代码功能有bug,所以要在工具里的内存查看 ...
- Linux之线程相关命令及常用命令
查进程 top命令:查看系统的资源状况.#top top -d 10 //指定系统更新进程的时间为10秒 ps:查看当前用户的活动进程.#ps -A ps命令查找与进程相关的PID号: ps ...
- [读书笔记1]《C语言嵌入式系统编程修炼》
大学前两年一直搞的是单片机,写的是嵌入式C语言程序,走过了不少弯路,现在感觉仍然在走弯路.有幸偶尔看到了这篇文章,深感自己以前写程序的时候存在很多误区.现写篇博客做下总结. 作者:宋宝华出处:天极 ...
- ACM_求f(n)
求f(n) Time Limit: 2000/1000ms (Java/Others) Problem Description: 设函数f(n)=1*1*1+2*2*2+3*3*3+...+n*n*n ...
- 流式套接字(SOCK_STREAM),数据报套接字 (SOCK_DGRAM) 的比较
1.流式套接字 使用这种套接字时,数据在客户端是顺序发送的,并且到达的顺序是一致的.比如你在客户端先发送1,再发送2,那么在服务器端的接收顺序是先接收到1,再接收到2,流式套接字是可靠的,是面向连接的 ...