流程:

1.当按钮单击时,弹出OpenFileDialog

2.判断后缀名是否合法

3.导入数据库

按钮事件中的代码:

1.判断用户是否选中文件。

2.判断用户选择的文件是否为txt

//第一步,当按钮被点击时,弹出选择文件框,OpenFileDialog
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "文件文件|*.txt";
if (ofd.ShowDialog() == DialogResult.OK)
{
if (ofd.SafeFileName == "*.txt")
{
this.txtFilePath.Text = ofd.FileName;
//准备导入数据
ImportData(ofd.FileName);
}
}

  

ImportData中的代码:

*:这种方式可以节省打开服务器连接的效率,不用没执行一次循环就开启一次连接。

1.打开reader流,并制定文件编码格式,这里给的是本机编码,Encoding.Default

2.以约定的分隔符分割文件,这里是用,作为分隔符

3.拼接插入数据库的Sql语句

4.执行sql代码。

private void ImportData(string Path)
{
string temp = string.Empty;
//File.ReadAllText(Path);
using (StreamReader reader = new StreamReader(Path,Encoding.Default)) //指定编码格式,如果指定的文件编码格式不一样则会乱码
{
//reader.ReadLine();
string connStr = ConfigurationManager.ConnectionStrings["SqlConfig"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
//using (SqlCommand cmd = new SqlCommand(sql,conn))
using (SqlCommand cmd = conn.CreateCommand())
{ while (!string.IsNullOrEmpty(temp = reader.ReadLine()))
{
var ss = temp.Split(','); //,为约定的分隔符,当前ss中存储的是已经分割后的数组
string sql = string.Format("insert into tblStudent(stuName,stuSex,stuBirthDate,stuPhone) values({0},{1},{2},{3},{4})", ss[0], ss[1], ss[2], ss[3]); //拼接Sql语句,数值类型需要+‘’
conn.Open();
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
}//end while
}//end SqlCommand
}//end SqlConnection
}//end StreamReader
}

  

C/s从文件(TXT)中读取数据插入数据库的更多相关文章

  1. 【ADO.NET】3、从TXT中导入数据到数据库

    数据库字段与类型id int,Name nvarchar(20),Age int TXT文本内容为 小高-20张三-18李四-19 private void btnInput_Click(object ...

  2. c++从txt中读取数据,数据并不是一行路径(实用)

    #include <iostream>#include <fstream>#include <string> using namespace std; //输出空行 ...

  3. 程序一 用记事本建立文件src.dat,其中存放若干字符。编写程序,从文件src.dat中读取数据,统计其中的大写字母、小写字母、数字、其它字符的个数,并将这些数据写入到文件test.dat中。

    用记事本建立文件src.dat,其中存放若干字符.编写程序,从文件src.dat中读取数据,统计其中的大写字母.小写字母.数字.其它字符的个数,并将这些数据写入到文件test.dat中. #inclu ...

  4. java从文件中读取数据然后插入到数据库表中

    实习工作中,完成了领导交给的任务,将搜集到的数据插入到数据库中,代码片段如下: static Connection getConnection() throws SQLException, IOExc ...

  5. 【Python】从文件中读取数据

    从文件中读取数据 1.1 读取整个文件 要读取文件,需要一个包含几行文本的文件(文件PI_DESC.txt与file_reader.py在同一目录下) PI_DESC.txt 3.1415926535 ...

  6. Kafka消费者 从Kafka中读取数据并写入文件

    Kafka消费者 从Kafka中读取数据 最近有需求要从kafak上消费读取实时数据,并将数据中的key输出到文件中,用于发布端的原始点进行比对,以此来确定是否传输过程中有遗漏数据. 不废话,直接上代 ...

  7. 归纳从文件中读取数据的六种方法-JAVA IO基础总结第2篇

    在上一篇文章中,我为大家介绍了<5种创建文件并写入文件数据的方法>,本节我们为大家来介绍6种从文件中读取数据的方法. 另外为了方便大家理解,我为这一篇文章录制了对应的视频:总结java从文 ...

  8. TF从文件中读取数据

    从文件中读取数据 在TensorFlow中进行模型训练时,在官网给出的三种读取方式,中最好的文件读取方式就是将利用队列进行文件读取,而且步骤有两步: 把样本数据写入TFRecords二进制文件 从队列 ...

  9. 从多个XML文档中读取数据用于显示webapi帮助文档

    前言: 你先得知道HelpPageConfig文件,不知道说明你现在不需要这个,所以下文就不用看了,等知道了再看也不急.当然如果你很知道这个,下文也不用看了,因为你会了. 方法一: new XmlDo ...

随机推荐

  1. javascript与jQuery选项卡效果

    HTML结构: <!doctype html><html><head><meta charset="utf-8"><title ...

  2. JS调用WebService,发布到IIS,网页提示WebService未定义[已解决]

    VS2013中,JS调用WebService,一直运行正常.部署到WindowsServer2008之后,在网页中访问,始终提示网页中有错误,点开之后发现是WebService未定义. 于是上网查解决 ...

  3. Shell常见用法小记

    shell的简单使用 最近发现shell脚本在平常工作中简直算一把瑞士军刀,很多场景下用shell脚本能实现常用的简单需求,而之前都没怎么学习过shell,就趁机把shell相关的语法和常见用法总结了 ...

  4. exports和module.exports的区别

    总结:exports是module.exports的指向. 1. module应该是require方法中,上下文中的对象 2. exports对象应该是上下文中引用module.exports的新对象 ...

  5. 【转】AS3多种天气预报调用代码分享

    今天我们来介绍利用weather.com.cn上的天气预报功能,这里介绍了大家常用的,其它的大家可以自己去下载. 我们这里的天气预览不需要js来调用,只要用iframe就可以了,更不需要ASP/' t ...

  6. 网站建设常用JQuery插件整理

    1.jQuery.lazyload 作用:延迟加载网站图片,常用于电商网站.图片展示网站,对于提高网站打开速度比较有效. 2.Owl Carousel 作用:图片滚动特效.响应式传送带插件,特点是支持 ...

  7. react中,constructor和getInitialState的区别

    1,ES6语法 使用class声明一个类,且要继承react组件的方法和属性的时候 : 在里面我们可以直接指定 this.state = { }, 我们可以当前组件内任何地方使用 this.setSt ...

  8. 一些IO流的知识

    IO流: 输入流:输出流: 字节流:字符流:为了处理文字数据方便而出现的对象. 其实这些对象的内部使用的还是字节流(因为文字最终也是字节数据) 只不过,通过字节流读取了相对应的字节数,没有对这些字节直 ...

  9. 移动端WEBAPP开发遇到的坑,以及填坑方案!持续更新~~~~

    前言:在移动端WEBAPP开发中会遇到各种各样的问题,通过此文对遇到的问题做一个归纳总结,方便自己日后查询,也给各位前端开发友人做一个参考.   此文中涉及的问题是本人开发中遇到的,解决方案是本人思考 ...

  10. FPGA中将十进制数在数码管中显示(verilog版)--二进制转换为BCD码

    这周有朋友问怎样在fpga中用数码管来显示一个十进制数,比如1000.每个数码管上显示一位十进制数.如果用高级语言来分离各位,只需要分别对该数做1000,100,10对应的取商和取余即可分离出千百十个 ...