c# 读取导入的excel文件,循环批量处理数据
dt = FM_HR_ShiftMaintenanceManager.GetCsvToDataTable(strConn, excelName,"XJSQMonthlyImportExcelData");
int iCount = dt.Rows.Count; StringBuilder sb = new StringBuilder();
if (dt != null)
{
int loop = Convert.ToInt32(Math.Floor((iCount / 100) * 1.0));
DlSoft.Liveflow.Common.Log.LogHelper.Logger.Write("loop :"+loop);
if (loop < 1)
{
for (int j = 0; j < iCount; j++)
{
if (!string.IsNullOrEmpty(dt.Rows[j][1].ToString())) {
sb.Append(dt.Rows[j][0].ToString() + "@@" + dt.Rows[j][1].ToString() + "$$");
}
}
ssql = string.Format(@"exec usp_UpdateXiuJiaSQMonthlyStatus '{0}'", sb.ToString());
int t = dbt.ExecuteNonQuery(ssql);
}
else
{
for (int k = 0; k < loop; k++)
{
for (int l = 0; l < 100; l++)
{
if (!string.IsNullOrEmpty(dt.Rows[l + k * 100][1].ToString()))
{
sb.Append(dt.Rows[l + k * 100][0].ToString() + "@@" + dt.Rows[l + k * 100][1].ToString() + "$$");
}
}
if (!string.IsNullOrEmpty(sb.ToString())) {
ssql = string.Format(@"exec usp_UpdateXiuJiaSQMonthlyStatus '{0}'", sb.ToString());
int tt = dbt.ExecuteNonQuery(ssql);
sb.Remove(0, sb.Length);
}
}
for (int m = 0; m < iCount - loop * 100; m++)
{
if (!string.IsNullOrEmpty(dt.Rows[m + loop * 100][1].ToString()))
{
sb.Append(dt.Rows[m + loop * 100][0].ToString() + "@@" + dt.Rows[m + loop * 100][1].ToString() + "$$");
}
}
if (!string.IsNullOrEmpty(sb.ToString())) {
ssql = string.Format(@"exec usp_UpdateXiuJiaSQMonthlyStatus '{0}'", sb.ToString());
int ttt = dbt.ExecuteNonQuery(ssql);
}
}
}
获取excel数据
/// <summary>
/// 获取excel数据导入.xlsxs
/// </summary>
/// <param name="strConn">连接名称</param>
/// <param name="path">exec地址</param>
/// <param name="excelName">excel名字</param>
/// <param name="FillName">exce表自定义名字</param>
/// <returns></returns>
public static DataTable GetCsvToDataTable(string strConn, string excelName, string FillName)
{
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
DataSet ds = new DataSet();
OleDbDataAdapter odda = new OleDbDataAdapter(string.Format("select * from [" + excelName + "$]"), conn); //这里的表名参数,就是 CSV的完整文件名
odda.Fill(ds, FillName);
conn.Close();
return ds.Tables[0];
}
c# 读取导入的excel文件,循环批量处理数据的更多相关文章
- java使用POI操作excel文件,实现批量导出,和导入
一.POI的定义 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI .jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel.而poi可以操作Exc ...
- 导入导出Excel文件
搭建环境 先新建web project ,然后Add Struts Capabilties: 下载导入导出Excel所需的jar包: poi-3.8-20120326.jar包 : http:// ...
- 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转
效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载]) 本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较 ...
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- c++ 读取并解析excel文件方法
用Cocos开发模型特效工具编辑器,跨Mac和windows,当中有个需求是读取并解析excel文件,但网上的查找的例子几乎都只能是在windows下面使用,再或者是命令行脚本之类的.于是,自己写了一 ...
- (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案
注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经常宕机,而且没有规律性,查看GC日志发生了out of memory,是堆溢出导致的,分析了一下堆的d ...
- C# 读取CSV和EXCEL文件示例
我们习惯了直接连到数据库上面读取数据表的数据内容: 如果有一天我们需要读取CSV,EXCEL文件的内容的时候,可不可以也像读数据表的方式一样呢?当然可以,使用OleDB ADO.NET是很简单的事情 ...
- 【转】Python xlrd、xlwt、xlutils读取、修改Excel文件
Python xlrd.xlwt.xlutils读取.修改Excel文件 一.xlrd读取excel 这里介绍一个不错的包xlrs,可以工作在任何平台.这也就意味着你可以在Linux下读取Excel文 ...
随机推荐
- cocos2d-x中的二段构造模式
学习cocos2d-x的过程中,会发现很多对象都通过一个静态函数create来创建.比方以下的一个样例 #define CREATE_FUNC (__TYPE__) \ static __TYPE__ ...
- hpuoj--校赛--爬楼梯(模拟)
问题 E: 感恩节KK专场--爬楼梯 时间限制: 1 Sec 内存限制: 1000 MB 提交: 382 解决: 89 [提交][状态][讨论版] 题目描述 来机房比赛的时候大家都会爬楼梯,但是每 ...
- PowerDesigner怎么调出工具箱?
PowerDesigner怎么调出工具箱? 如图操作:
- OpenGL编程逐步深入(十一)组合变换
准备知识 在前面的几节教程中,我们已经提到过几种变换,为物体在3D世界中的移动提供的极大的灵活性.但是我们还有很多东西需要学习(如摄像机控制和透视投影),你可以已经猜到,我们需要將这些变换组合起来.在 ...
- The IDL compiler
The IDL compiler or bindings generator transcompiles Web IDL to C++ code, specifically bindings betw ...
- 洛谷1073 NOIP2009 最优贸易
题目大意 C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市.任意两个城市之间最多只有一条道路直接相连.这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双 ...
- Perl模块利用CPAN在线安装自动化
需要解决2个问题: 1. 如何与CPAN交互:利用perl –MCPAN –e ‘install 模块’ 2. 如何安装指定的版本:作者/模块-版本.tar.gz How to install a ...
- [HAOI2006]旅行(并查集)
寒假填坑五十道省选题——第五道 [HAOI2006]旅行 题目描述 Z小镇是一个景色宜人的地方,吸引来自各地的观光客来此旅游观光.Z小镇附近共有N个景点(编号为1,2,3,…,N),这些景点被M条道路 ...
- Unity调用Android的两种方式:其一、调用jar包
unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...
- Java 学习(12):重写(Override)与重载(Overload) & 多态
目录 --- 重写 --- 重载 --- 多态 重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变.即外壳不变,核心重写! 重写的好处在于子类可 ...