当前位置:  编程技术>.net/c#/asp.net

C#导入导出EXCEL文件的代码实例

    来源: 互联网  发布时间:2014-10-30

    本文导语:  代码如下:using System;using System.Data;using System.Data.OleDb;namespace ZFSoft.Joint{    public class ExcelIO    {        private int _ReturnStatus;        private string _ReturnMessage;        ///         /// 执行返回状态        ///  ...

代码如下:

using System;
using System.Data;
using System.Data.OleDb;

namespace ZFSoft.Joint
{
    public class ExcelIO
    {
        private int _ReturnStatus;
        private string _ReturnMessage;

        ///
        /// 执行返回状态
        ///
        public int ReturnStatus
        {
            get
            {
                return _ReturnStatus;
            }
        }

        ///
        /// 执行返回信息
        ///
        public string ReturnMessage
        {
            get
            {
                return _ReturnMessage;
            }
        }

        public ExcelIO()
        {
        }

         
        ///
        /// 导入EXCEL到DataSet
        ///
        /// Excel全路径文件名
        /// 导入成功的DataSet
        public DataTable ImportExcel(string fileName)
        {
            //判断是否安装EXCEL
            Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
            if (xlApp == null)
            {
                _ReturnStatus = -1;
                _ReturnMessage = "无法创建Excel对象,可能您的计算机未安装Excel";
                return null;
            }

            //判断文件是否被其他进程使用           
            Microsoft.Office.Interop.Excel.Workbook workbook;
            try
            {
                workbook = xlApp.Workbooks.Open(fileName, 0, false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, 1, 0);
            }
            catch
            {
                _ReturnStatus = -1;
                _ReturnMessage = "Excel文件处于打开状态,请保存关闭";
                return null;
            }

            //获得所有Sheet名称
            int n = workbook.Worksheets.Count;
            string[] SheetSet = new string[n];
            System.Collections.ArrayList al = new System.Collections.ArrayList();
            for (int i = 1; i 0)
            {
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideHorizontal].ColorIndex = Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic;
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideHorizontal].LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideHorizontal].Weight = Microsoft.Office.Interop.Excel.XlBorderWeight.xlThin;
            }
            if (dt.Columns.Count > 1)
            {
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideVertical].ColorIndex = Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic;
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideVertical].LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideVertical].Weight = Microsoft.Office.Interop.Excel.XlBorderWeight.xlThin;
            }

            //保存文件
            if (saveFileName != "")
            {
                try
                {
                    workbook.Saved = true;
                    workbook.SaveCopyAs(saveFileName);
                    fileSaved = true;
                }
                catch (Exception ex)
                {
                    fileSaved = false;
                    _ReturnStatus = -1;
                    _ReturnMessage = "导出文件时出错,文件可能正被打开!n" + ex.Message;
                }
            }
            else
            {
                fileSaved = false;
            }

            //释放Excel对应的对象
            if (range != null)
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(range);
                range = null;
            }
            if (worksheet != null)
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
                worksheet = null;
            }
            if (workbook != null)
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
                workbook = null;
            }
            if (workbooks != null)
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(workbooks);
                workbooks = null;
            }
            xlApp.Application.Workbooks.Close();
            xlApp.Quit();
            if (xlApp != null)
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
                xlApp = null;
            }
            GC.Collect();
            return fileSaved;
        }
    }
}

    
 
 

您可能感兴趣的文章:

  • C#导入文本文件的例子
  • c#实现将Excel导入到dataGridView的代码
  • C#实现Excel导入sqlite的方法
  • c#数据库与TXT导入导出的实例
  • C#中csv文件与DataTable互相导入处理实例解析
  • C#导入EXCEL的实例代码
  • c#将Excel数据导入到数据库的实现代码
  • MsSQL数据导入到Mongo的默认编码问题(正确导入Mongo的方法) iis7站长之家
  • C#实现导出和导入excel的代码
  • mysql 命令大全及导入导出表结构或数据
  • oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)
  • oracle 数据泵导入导出介绍
  • SQL SERVER导入、导出文本文件的例子
  • SQL Server导入导出数据时最常见的一个错误解决方法
  • oracle的导入导出注意事项及心得分享
  • 解析PL/SQL Developer导入导出数据库的方法以及说明
  • mysql 导入导出数据库、数据表的方法
  • oracle数据库导入导出命令使用方法
  • mysql导出导入中文表解决方法
  • Linux环境中Oracle数据导入与导出备份操作
  • Oracle的导入导出的问题
  • SQL Server2008数据库导入导出兼容性处理方案
  • 如何用java实现将数据库中的image类型数据导出到文本文件。并导入(高分求救!!)
  • 用Oracle管理服务器将数据导入与导出
  • Mysql 导入导出csv 中文乱码问题的解决方法
  • Oracle统计信息的导出与导入
  • mysql 导入导出数据库以及函数、存储过程的介绍
  • mysql下完整导出导入实现方法
  • Godaddy 导入导出MSSQL数据库的实现步骤
  • Oracle数据库密码重置、导入导出库命令示例应用
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • PHP处理SQL脚本文件导入到MySQL的代码实例
  • SQL导入Excel文件的实例分享
  • ASP.NET下向SQLServer2008导入文件实例操作方法
  • ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
  • 使用PHP导入与导出CSV文件实例详解
  • Drupal读取Excel并导入数据库实例
  • phpexcel导入excel数据使用方法实例
  • PHP导入导出mysql为sql文件的方法(实例)
  • android导入第三方jar包报错 如何正确导入jar包
  • php导入excel php使用phpexcel导入excel文件
  • MsSQL数据导入到Mongo的默认编码问题(正确导入Mongo的方法)
  • 数据导入工具 data2db
  • SQLSever导入数据图文方法
  • jsp中include指令静态导入和动态导入的区别详解
  • 对有自增长字段的表导入数据注意事项
  • 解析MYSQL 数据库导入SQL 文件出现乱码的问题
  • 如何把某文件导入到另外一文件
  • linux下程序输出导入到mysql?
  • Magento 的导入工具 Magmi
  • Jbuilder5里不能导入javax.servlet问题
  • kdevelop如何导入已有工程?
  • mysql使用SQLyog导入csv数据不成功的解决方法
  • mysqlimport导入表的奇怪问题
  • 如何让Audacity 支持mp3导入!进行编辑呢?
  • mysql导入mssql数据的方法
  • 求高手指点shell导入.dat文件到ORACLE数据库
  • PHP导入sql文件三种方法
  • eclipse导入jquery包后报错的解决方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3