ado.net excel 模版

private static void Excute()
        {
            while (true)
            {
                string templatePath = System.Environment.CurrentDirectory + "\\template.xls";
                string newPath = System.Environment.CurrentDirectory + "\\temp.xls";
                if (!File.Exists(templatePath))
                    return;

if (!File.Exists(newPath))
                    File.Copy(templatePath, newPath,true);

FileInfo fileInfo = new FileInfo(newPath);
                string s = fileInfo.Attributes.ToString();
                if (fileInfo.Attributes.ToString().ToLower().IndexOf("readonly") != -1)
                {
                    fileInfo.Attributes = FileAttributes.Normal;
                }

string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;;Persist Security Info=False;" +
                    "Extended Properties=\"Excel 12.0;HDR=YES;IMEX=0\";" +
                    // 指定扩展属性为 Microsoft Excel 8.0 (97) 9.0 (2000) 10.0 (2002),并且第一行作为数据返回,且以文本方式读取       
                    "data source=" + newPath;

OleDbConnection conn = new OleDbConnection(connStr);
                OleDbCommand cmd = new OleDbCommand("", conn);

try
                {
                    conn.Open();

string sql = "insert into [Sheet2$] (姓名,性别,联系电话) values (41,51,61)";
                    cmd.CommandText = sql;
                    cmd.ExecuteNonQuery();
                    conn.Close();

//FileStream reader = File.OpenRead(newPath);
                    //int length = (int)reader.Length;
                    //byte[] buffer = new byte[length];
                    //int byteToRead;
                    //while (length > 0)
                    //{
                    //    //客户端还开着
                    //    byteToRead = reader.Read(buffer, 0, length);
                    //    length -= byteToRead;
                    //    //客户端断开时
                    //    //length = -1;
                    //}

//以下为一个事务
                    File.Copy(newPath, "2011.xls", true);
                    if (File.Exists(newPath))
                        File.Delete(newPath);
                }
                catch (Exception e)
                {
                    System.Diagnostics.Debug.WriteLine(e.Message);
                }
                finally
                {
                    conn.Dispose();
                }

Thread.Sleep(1000);
            }

private static void Excute()
        {
            while (true)
            {
                string templatePath = System.Environment.CurrentDirectory + "\\template.xls";
                string newPath = System.Environment.CurrentDirectory + "\\temp.xls";
                if (!File.Exists(templatePath))
                    return;

if (!File.Exists(newPath))
                    File.Copy(templatePath, newPath,true);

FileInfo fileInfo = new FileInfo(newPath);
                string s = fileInfo.Attributes.ToString();
                if (fileInfo.Attributes.ToString().ToLower().IndexOf("readonly") != -1)
                {
                    fileInfo.Attributes = FileAttributes.Normal;
                }

string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                    "Extended Properties=\"Excel 8.0;HDR=YES;IMEX=2\";" +
                    // 指定扩展属性为 Microsoft Excel 8.0 (97) 9.0 (2000) 10.0 (2002),并且第一行作为数据返回,且以文本方式读取       
                    "data source=" + newPath;

OleDbConnection conn = new OleDbConnection(connStr);
                OleDbCommand cmd = new OleDbCommand("", conn);

try
                {
                    conn.Open();

string sql = "insert into [Sheet2$] (姓名,性别,联系电话) values (41,51,61)";
                    cmd.CommandText = sql;
                    cmd.ExecuteNonQuery();
                    conn.Close();

//FileStream reader = File.OpenRead(newPath);
                    //int length = (int)reader.Length;
                    //byte[] buffer = new byte[length];
                    //int byteToRead;
                    //while (length > 0)
                    //{
                    //    //客户端还开着
                    //    byteToRead = reader.Read(buffer, 0, length);
                    //    length -= byteToRead;
                    //    //客户端断开时
                    //    //length = -1;
                    //}

//以下为一个事务
                    File.Copy(newPath, "2011.xls", true);
                    if (File.Exists(newPath))
                        File.Delete(newPath);

}
                catch (Exception e)
                {
                   
                }
                finally
                {
                    conn.Dispose();
                }

Thread.Sleep(1000);
            }
        }

ado.net excel 模版的更多相关文章

  1. C#巧用Excel模版变成把Table打印出来

    将一个做好的Excel模版,通过程序填上数据然后打印出来这个需求有两种方法一种是通过代码打开Excel模版然后填入数据然后再打印. 第二种方法就是我将要介绍的 1.将Excel设置好格式另存为HTML ...

  2. JAVA实现Excel导出数据(以写好的Excel模版导出)

    工作中经常会有将后台数据以Excel导出的功能. 简单的方法有将response的contentType设置为application/vnd.ms-excel: 或在JSP页面直接设置成: <% ...

  3. POI3.10 根据Excel模版导出数据测试

    1:所需jar包 2:Mysql数据库表内容如下: 3:代码结构如下: (1)User.java public class User { private int id; private String ...

  4. ADO读取EXCEL

    窗体上拖放ADOQuery1,DataSetProvider1,DataSource1,ClientDataSet1,OpenDialog1, ExcelApplication1,ExcelWorkb ...

  5. ADO对Excel对象进行连接时的 两种方法区别

    在通过ADO对Excel对象进行连接时(此时Excel则认为是一个数据源),需要配置对Excel数据源对应的连接串,这个连接串中包括了Provider信息(其实类似对数据库进行连接操作时,都需要指定连 ...

  6. Kettle 事务、转换内顺序、excel模版、使用踩坑

    kettle中转换和作业的执行顺序:     1.一个作业内的转换,是顺序执行的.     2.一个转换内的步骤是并行执行的.     3.作业内不支持事务,转换内支持事务. 根据业务需要,通常需要在 ...

  7. [poi使用]使用excel模版导出excel

    ​ Apache POI是基于Office Open XML标准(OOXML)和Microsoft的OLE 2复合文档格式(OLE2)处理各种文件格式的开源项目.简而言之,您可以使用Java读写MS ...

  8. 同时使用ADO与Excel类库冲突的问题

    客户需要一个Demo程序实现Access数据库表导出到Excel表格,并将表中存储的照片(OLE对象)以其中一个字段(编号)命名存储到本地.程序中引入了ADO操作Access数据库("C:\ ...

  9. 使用NPOI插件读取excel模版修改数据后保存到新目录新文件中

    添加引用: using System.IO; using NPOI.XSSF.UserModel; using NPOI.SS.UserModel; using NPOI.HSSF.UserModel ...

随机推荐

  1. deepin gala窗口管理器关闭动画

    deepin中有两个管理器,一个基于metacity,另一个基于gala,可以用super+tab来进行切换.metacity是不带动画的,而 gala是带动画效果的.但这里有个问题,不知道有些同学上 ...

  2. IComparable<T> Vs. IComparer<T> System.Comparison<T>

    Well they are not quite the same thing as IComparer<T> is implemented on a type that is capabl ...

  3. 异步|同步&阻塞|非阻塞

    异步|同步:区别在于发出一个功能调用时,是否马上得到返回结果 阻塞|非阻塞:区别在于调用结果返回之前,当前线程是否挂起 node.js:单线程.异步非阻塞模型 单线程与异步不矛盾,与并发是矛盾的 ht ...

  4. linux 网卡启动方法

    CentOS 7默认的网卡名称是eno16777736 一般人的是 eth0 编辑配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eno16777736把 O ...

  5. windows apache24 php Call to undefined function curl_init

    check dll files in dir: Apache24/bin libssh2.dll, ssleay32.dll, libeay32.dll http://nz.php.net/manua ...

  6. python——argsort函数

    numpy中argsort函数用法,有需要的朋友可以参考下. 在Python中使用help帮助 >>> import numpy >>> help(numpy.ar ...

  7. JQuery easyui Datagrid 分页事件

    easyui是Jquery中的一个轻量级UI插件,提供了一些诸如window.datagrid.button等控件.现在主要说说Datagrid中分页控件的使用. easyui中可以单独添加分页pag ...

  8. div,li,span自适应宽度换行问题

    <ul class="news">    <li><span class="lbl">右对齐,换行显示的解决方法</s ...

  9. ubuntu 13.10 svn工具 rabbitvcs 安装

    ubuntu 版本:13.10:桌面模式默认:unity :文件管理器:nautilus

  10. 基于JS功能强大的日期插件Kalendae

    开发中需要一个日期插件,可以在zepto下使用,可以选择日期段,可以设置不可选日期 找到一个完全满足的,并且基于JS不依赖于任何库. 在线演示:http://chipersoft.com/Kalend ...