zoukankan      html  css  js  c++  java
  • 将文本数据提取导入到数据库

    一个文本文件含有如下内容:

    4580616022644994|3000|赵涛

    4580616022645017|6000|张屹

    4580616022645090|3200|郑欣夏

    上述文件每行为一个转账记录,第一列表示帐号,第二列表示金额,第三列表示开户人姓名。

    创建一张数据库表(MS SQLServer数据库,表名和字段名自拟),请将上述文件逐条插入此表中。

    具体代码如下:

    View Code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Diagnostics;
    
    namespace 从文本中提取数据到数据库中
    {
        class Program
        {
    
            static void Main(string[] args)
            {
                //项目中的Programe.cs文件必须加上以下神奇的代码,对数据库的操作才能生效
                string dataDir = AppDomain.CurrentDomain.BaseDirectory;
                if (dataDir.EndsWith(@"\bin\Debug\")
                    || dataDir.EndsWith(@"\bin\Release\"))
                {
                    dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
                    AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
                }
    
                //启用秒表来计时
                Stopwatch timer = new Stopwatch();
                timer.Start();
    
    
                string[] lines = System.IO.File.ReadAllLines(@"D:\转账记录.txt", Encoding.Default);
                for (int i = 0; i < lines.Length; i++)
                {
                    string[] str=lines[i].Split('|');
    
                    using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;
    AttachDBFilename=|DataDirectory|\ZhuanZhang.mdf;Integrated Security=True;User Instance=True"))
                    {
                        conn.Open();
                        using (SqlCommand cmd = conn.CreateCommand())
                        {
                            cmd.CommandText = "Insert into T_ZhuanZhang (CardNum,Money,Name) values (@CardNum,@Money,@Name)";
                            cmd.Parameters.Add(new SqlParameter("CardNum", str[0]));
                            cmd.Parameters.Add(new SqlParameter("Money", str[1]));
                            cmd.Parameters.Add(new SqlParameter("Name", str[2]));
                            cmd.ExecuteNonQuery();
                        }
                    }
                }
    
                Console.WriteLine("数据导入成功!");
                timer.Stop();
                Console.WriteLine(timer.Elapsed);
                Console.ReadKey();
    
    
            }
        }
    }

    运行效果:

  • 相关阅读:
    Android学习总结(十三) ———— ListView 简单用法
    Android学习总结(十二)———— BaseAdapter优化
    Android学习总结(九)———— 内容提供器(ContentProvider)
    Android学习总结(十)———— Intent的使用
    RHEL 6.5升级GCC 4.9.3
    nodejs npm install全局安装和本地安装的区别
    ACE_linux:Reactor与Proactor两种模式的区别
    ACE_linux:任务 & 命令(Task and Command)
    ACE_linux:UDP通信
    ACE_linux:TCP通信
  • 原文地址:https://www.cnblogs.com/zxx193/p/2963956.html
Copyright © 2011-2022 走看看