if (txt01.Text != "")
{
this.lbzhantie.Items.Clear();
this.dtzhuanhuo.Rows.Clear();
if (txt01.Text.Contains(".xls"))
{
try
{
string strConn;
// strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + txt01.Text + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + txt01.Text + ";" + "Extended Properties='Excel 12.0;HDR=False;IMEX=1';";
OleDbConnection OleConn = new OleDbConnection(strConn);
OleConn.Open();
String sql = "SELECT * FROM [Sheet1$]";

OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
DataSet OleDsExcle = new DataSet();
OleDaExcel.Fill(OleDsExcle, "Sheet1");
// OleConn.Close();

DataTable dt = OleDsExcle.Tables["Sheet1"];
//增加到表中
int count = 0;
this.lbzhantie.Items.Clear();
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i][18].ToString() == "3")
{

//if (dt.Rows[i][3].ToString().Contains(","))
//{
// string[] upscode = dt.Rows[i][3].ToString().Split(',');
// foreach (string j in upscode)
// {
// this.lbzhantie.Items.Add(dt.Rows[i][2] + " " + j);

// }

//}
//else
//{
// this.lbzhantie.Items.Add(dt.Rows[i][2] + " " + dt.Rows[i][3].ToString());
//}
this.lbzhantie.Items.Add(dt.Rows[i][1].ToString());
lbcount.Visible = true;
lbcount.Text = "Paste: " + (lbzhantie.Items.Count);

}

if (dt.Rows[i][2].ToString() != "" && dt.Rows[i][2] != null)
{
string line = dt.Rows[i][5].ToString().ToUpper();
//if (line == "C")
//{
// line = "D";
//}
int num = Convert.ToInt32(alb.SelectAWBList1234(dt.Rows[i][1].ToString()));
if (num == 0)
{
//新增客编、备注、运单状态
SqlServerHelper sqlhelper1 = new SqlServerHelper();
string sqlstr = string.Format("insert into test() values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}')",
dt.Rows[i][1],
dt.Rows[i][2],
dt.Rows[i][10],
dt.Rows[i][11],
dt.Rows[i][16],
line,
dt.Rows[i][6].ToString().Replace("'", ""),
dt.Rows[i][7],
dt.Rows[i][4],
dt.Rows[i][12],
dt.Rows[i][13],
dt.Rows[i][9],
dt.Rows[i][3].ToString().Replace(",", ","),
dt.Rows[i][0],
dt.Rows[i][17],
dt.Rows[i][18],
dt.Rows[i][19],
dt.Rows[i][20].ToString().Trim(),
dt.Rows[i][15],
dt.Rows[i][6].ToString().Replace("'", ""));

sqlhelper1.ExecuteCommand(sqlstr.ToString());
count++;
}
// string test = dt.Rows[i][17].ToString();

}
}
MessageBox.Show("总共" + Convert.ToInt32(dt.Rows.Count - 1) + "条数据 " + count + "条上传成功 " + Convert.ToInt32(dt.Rows.Count - 1 - count) + "条重复记录");
}
catch (Exception err)
{
MessageBox.Show("数据绑定Excel失败!失败原因:" + err.Message, "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);

}
}
else
{
int js = 0;
string alldata = "";
using (System.IO.StreamReader sr = new System.IO.StreamReader(txt01.Text, System.Text.Encoding.Default))
{
alldata = sr.ReadToEnd();

}

if (alldata.Length > 10)
{
string[] linedataS = null;
string linedata = "";

linedataS = alldata.Split('\n');
SqlServerHelper sqlhelper = new SqlServerHelper();
for (int j = 1; j < linedataS.Length - 1; j++)
{
linedata = linedataS[j];

string[] sCol = linedata.Split(',');
if (sCol[18].ToString() == "3")
{

this.lbzhantie.Items.Add(sCol[1].ToString());
lbcount.Visible = true;
lbcount.Text = "count: " + (lbzhantie.Items.Count);

}
string test = sCol[1].ToString();
if (sCol[2] != "" && sCol[2] != null)
{
string line = sCol[5].ToUpper();
int count = Convert.ToInt32(alb.SelectAWBList1234(sCol[1]));
if (count == 0)
{
SqlServerHelper sqlhelper1 = new SqlServerHelper();
try
{
//StringBuilder sql = new StringBuilder(200);
StringBuilder sql = new StringBuilder(500);
sql.Append("insert into test() values(");

sql.Append("'");
sql.Append(sCol[1]);

sql.Append("','");
sql.Append(sCol[2]);

sql.Append("','");
sql.Append(sCol[10].Replace("'",""));

sql.Append("','");
sql.Append(sCol[11]);

sql.Append("','");
sql.Append(sCol[16]);

sql.Append("','");
sql.Append(line);

sql.Append("','");
sql.Append(sCol[6].ToString().Replace("'", "‘"));

sql.Append("','");
sql.Append(sCol[7]);

sql.Append("','");
sql.Append(sCol[4]);

sql.Append("','");
sql.Append(sCol[12]);

sql.Append("','");
sql.Append(sCol[13]);

sql.Append("','");
sql.Append(sCol[9]);

sql.Append("','");
sql.Append(sCol[3].ToString().Replace(",", ","));

sql.Append("','");
sql.Append(sCol[0]);
sql.Append("','");
sql.Append(sCol[17]);

sql.Append("','");
sql.Append(sCol[18]);

sql.Append("','");
sql.Append(sCol[19]);

sql.Append("','");
sql.Append(sCol[20].ToString().Trim());

sql.Append("','");
sql.Append(sCol[15]);

sql.Append("','");
sql.Append(sCol[6].ToString().Replace("'", "‘"));

sql.Append("')");

string temp = sql.ToString();
sqlhelper1.ExecuteCommand(sql.ToString());
js++;

}
catch (Exception ex)
{
continue;
}
}
}

}
}
MessageBox.Show(js + "条上传成功");

}

}
else
{
MessageBox.Show("Please choose excel file!");
}

winform导入excel或者csv的更多相关文章

  1. [zz]winform导入excel

    winfrom导入excel内容,要求能够excel中多个工作簿的内容.代码如下: #region 导入excel数据 private void button2_Click(object sender ...

  2. PHPExcel导出导入excel、csv等格式数据

    <?php if(!defined('BASEPATH')) exit('No direct script access allowed'); //物资发料单明细 class Read_writ ...

  3. SQLLoader2(导入EXCEL或csv格式的文件)

    一.EXCEL文件导入:1.首先将EXCEL文件另存为CSV格式文件--->用UltraEdit工具打开时可看到字段之间以逗号分隔. ,EMPNO,ENAME,JOB,MGR,HIREDATE, ...

  4. mysql 导入excel 或 .csv

    第一步 导出excel 去掉列头,设置文本里面格式

  5. laravel 导出导入excel和csv文件的 使用

    在项目中用到的常用功能数据导入导出 在laravel有插件可以直接使用 方便快捷 学习源头: https://www.cnblogs.com/martianShu/p/5869270.html htt ...

  6. Winform导入Excel数据到数据库

    public partial class ImportExcel : Form { AceessHelpers accessHelper = new AceessHelpers(); public I ...

  7. C#使用NOPI导入Excel

    使用NOPI导入Excel文档 NOPI版本:2.3.0,依赖于NPOI的SharpZipLib版本:0.86,经测试适用于.net4.0+ 记录遇到的几个问题 NOPI中的IWorkbook接口:x ...

  8. 【转】从phpMyAdmin批量导入Excel内容到MySQL(亲测非常简洁有效)

    今天做项目遇到需要用phpMyAdmin批量导入Excel内容到MySQL数据库.分析了我的踏坑经历并且总结一最便捷的一套导入数据的方法,非常实用简洁: 1.修改Excel表的数据,使得Excel中的 ...

  9. winform导入导出excel,后台动态添加控件

    思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...

随机推荐

  1. 常用的正则表达式@java后台

    package Regex; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @作者 Goofy * @邮件 ...

  2. 8.Cisco DHCP中继详解

    1.网络中的终端通过发送DHCP广播的方式来获取IP地址信息.由于VLAN隔离广播,当终端与DHCP服务器不在同一广播域时,就需要用到DHCP中继. 2.DHCP服务的原理概述: DHCP服务器想要给 ...

  3. 4. DHCP配置(Windows2012)

    1.点击服务器管理器 2.选择添加角色和功能 3. 按照添加角色和功能向导来添加 保持默认,下一步 保持默认,下一步 保持默认,下一步 勾选DHCP服务器,在弹出的小窗点击添加功能. 保持默认,下一步 ...

  4. AcWing 243. 一个简单的整数问题2 (树状数组,区间更新/询问)

    题意:区间更新,区间询问. 题解;对于区间更新,我们还是用差分数组\(b_i\)来更新,区间询问时,我们的答案是:\(\sum_{i=l}^{r}\sum_{j=1}^{i}b_j\), 所以,我们搞 ...

  5. Codeforces Round #643 (Div. 2) C. Count Triangles (数学公式)

    题意:给你四个正整数\(A,B,C,D\),且\(A\le B\le C \le D\),有\(A\le x\le B\le y\le C \le z\le D\),求最多有多少组\((x,y,z)\ ...

  6. Java基础(第二期)

    数据类型扩展以及面试题讲解 整数拓展:进制 int i=10; int i2=010; //八进制0 int i3=0x10; //十六进制0x 0~9 A~F 16 相关进制转换自行学习,用的不多 ...

  7. Markdown基本语法学习(使用Typora编辑器)

    Markdown基本语法学习(使用Typora编辑器) 一级标题:就用 #加标题名字 二级标题 二级标题:## + 标题名字 三级标题 三级标题:### + 标题名字 四级标题 四级标题:#### + ...

  8. kubernetes实战-交付dubbo服务到k8s集群(二)交付jenkins到k8s集群

    首先下载jenkins镜像并上传到我们自己的私有仓库:7-200 # docker pull jenkins/jenkins:2.190.3 # docker tag 22b8b9a84dbe har ...

  9. 基于Vue的单页面应用的Markdown渲染

    之前渲染 Markdown 的时候, 笔者使用的是 mavonEditor 的预览模式, 使用起来比较爽, 只需要引入组件即可, 但是在最近的开发中, 遇到了困难. 主要问题在于作为单页面应用, 站内 ...

  10. woj1018(HDU4384)KING KONG 循环群

    title: woj1018(HDU4384)KING KONG 循环群 date: 2020-03-19 09:43:00 categories: [acm] tags: [acm,woj,数学] ...