(8)C#之ADO.NET 文件数据导入到数据库

有时候我们会把文件中的数据导入到数据库中,那么这要如何做呢?下面进行详细分析。

 
①先看看我们要导入的文件数据,假设文件数据和数据库的表字段分别如下图:



  
        ◇说明:名字和年龄之间是以'|'分隔开的
 
②那么我们就要把相对应的名字插入数据库中的name字段,年龄插入数据库中的age字段。首先我们创建一个Button按钮,在这个按钮的Click事件中写下如下代码:
 
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "文本文件|*.txt";
 
            if (ofd.ShowDialog() != true)
            {
                return;
            }
            string filename = ofd.FileName;
            IEnumerable<string> lines = File.ReadLines(filename,Encoding.Default);
            int i = 0;
            foreach (string line in lines)
            {
                string[] segs = line.Split('|');
                string name = segs[0];
                int age = Convert.ToInt32(segs[1]);
                SqlHelper.ExecuteNonQuery("Insert into T_Customer (name,age) values(@name,@age)",
                    new SqlParameter("@name",name),
                    new SqlParameter("@age",age));
                i++;
            }
            MessageBox.Show("导入成功!共导入"+i+"条数据");
        }

 

◇现在进行分析:
 
◇首先利用ofd.Filename属性,获取到我们要打开的文件的文件名。
 
◇然后再利用一个集合类 IEnumerable,以及一个逐行读取文件    方法File.ReadLines(filename,Encoding.Default),逐行的把文字加入到该集合中去。(其中,filename是文件名,Encoding.Default是设置为系统默认的编码方式,以防止乱码的产生)
 
◇然后利用foreach遍历,将lines逐行遍历到line,并且在遍历过程中,利用字符串的分割函数,以‘|’对每行中的数据进行分割,产生数组并赋给变量name和age。
 
◇最后把获取到的变量值插入到数据库中,打印出最后成功导入的数据。

转载于:https://www.cnblogs.com/kaolalovemiaomiao/p/4707580.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值