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. C++复习笔记(1)

    复(su)习(cheng)一下c++. 1. 函数 函数重载:允许用同一函数名定义多个函数,但这些函数必须参数个数不同或类型不同. 函数模版: (应该是跟java的泛化类似,内容待扩展) templa ...

  2. linux切割日志

    1.vim log.sh,将文件复制进去#!/bin/sh LOG_PATH=/home/tomcat/apache-tomcat-7.0.56/logs/ LOG_NAME=catalina.out ...

  3. HTTPS优化与证书

    1.HTTPS性能优化 1.1 HTTPS性能损耗原因 前文讨论了HTTPS原理与优势:身份验证.信息加密与完整性校验等,且未对TCP和HTTP协议做任何修改.但通过增加新协议以实现更安全的通信必然需 ...

  4. DolphinScheduler1.3.2源码分析(一)看源码前先把疑问列出来

    1.谈谈如何看源码   个人觉得拿到一个开源的项目,首先要先使用一下. 如果是有页面的那种,可以先把测试平台部署起来,然后到处随意点点,然后用一下最基础的功能,走一遍基础的使用流程.不用担心会把系统弄 ...

  5. CF 1326 D. Prefix-Suffix Palindrome

    D. Prefix-Suffix Palindrome 题意 给一个字符串 s,求一个字符串 t,t 由 s 的某个前缀以及某个后缀拼接而成,且 t 是回文串,长度不能超过 s.输出最长的 t 分析 ...

  6. hdu3559 Frost Chain (概率dp+记忆化搜索)

    Problem Description In the unimaginable popular DotA game, the hero Lich has a wonderful skill: Fros ...

  7. 2019牛客多校 Round5

    Solved:4 Rank:122 补题:8/10 A digits 2 签到 把这个数写n遍 #include <bits/stdc++.h> using namespace std; ...

  8. 【uva 1153】Keep the Customer Satisfied(算法效率--贪心+优先队列)

    题意:有N个工作,已知每个工作需要的时间和截止时间.要求所有工作穿行完成,第一项任务开始的时间不早于时刻0.问最多能完成多少个工作.(N≤800000) 解法:贪心.可以模型化题目为:已知N个任务的长 ...

  9. poj1787 Charlie's Change

    Description Charlie is a driver of Advanced Cargo Movement, Ltd. Charlie drives a lot and so he ofte ...

  10. PowerShell随笔9--- call

    很多时候我们需要在一个脚本文件执行另外一个脚本文件,比如我们有一个Test.ps1文件 我们有以下2种方法: Invoke-Expression (&) 我们可以看到,Test.ps1中的代码 ...