zoukankan      html  css  js  c++  java
  • 关于C#读取文件.....并插入数据库操作方法

      public static DataSet TextFileLoader(string FilePath, string TableName, string[] FieldsInArray)
            {
                DataSet ds = new DataSet();//创建一个数据集对象
                DataTable dt = new DataTable(TableName); //创建一个数据表

                FileStream fs = File.Open(FilePath, FileMode.Open, FileAccess.Read); //文件流说明方式        
                //Encoding targetEncoding = GetEncoding(fs, "gb2312");
                StreamReader sr = new StreamReader(fs,Encoding.Default);//读入

              for (int i = 0; i < FieldsInArray.Length; i++) //数据库字段
               {
                   dt.Columns.Add(new DataColumn(FieldsInArray[i], typeof(string)));//添加列
               }

               string strRead; //声明一个字符串
               bool flag = true; //声明一个标识

                while (flag)
               {
                 
                  strRead = sr.ReadLine();
                  if (!string.IsNullOrEmpty(strRead))
                   {
                       
                      string[] aryVale = strRead.Split ('\t');

                      for (int i = 0; i < aryVale.Length; i++)
                      {
                          if (aryVale[i].Contains("CZ88.NET"))
                          {
                              aryVale[i] = aryVale[i].Replace("CZ88.NET", "");//替换
                          }
                      }
                      DataRow dr = dt.NewRow(); //得到数据行
                      DataColumn dm = new DataColumn();
                     
                     
                      //dt1.Columns.Add("名称");
                      //dt1.Columns.Add("价格");
                      //dt1.Columns.Add("数量");
                      for (int k = 0; k < aryVale.Length; k++)
                       {
                          dr[FieldsInArray[k]] = aryVale[k];
                     }
                      dt.Rows.Add(dr);
                     
                   }
                   else
                   {
                       flag = false;
                   }
              }
               ds.Tables.Add(dt);
                return ds;            

            }

            public void Bind() {

                string[] FieldsInArray = { "CountStartip", "CountEndip", "CountCountry" };//数据库字段
                DataSet ds = new DataSet();
                 //方法调用
                ds = TextFileLoader(@"E:\WebSite1\2.text ", "Count_IplocalTable", FieldsInArray);
                this.GridView1.DataSource = ds;
                this.GridView1.DataBind();
            }

            public void EnQeruy(DataSet ds)
            {
               
                using (SqlConnection con = new SqlConnection("sever=.;database=ip;uid=sa;pwd=sa;"))
                {

                    SqlTransaction trans = con.BeginTransaction();//创建事物;

                    try
                    {
                       
                        SqlCommand cmd = new SqlCommand();
                        cmd.ExecuteNonQuery();
                        trans.Commit();
                        for (int i = 0; i < ds.Tables[0].Rows; i++)
                        {
                            DataRow dr = ds.Tables[0].Rows[i];
                            string sqlstr = "insert into insert into Count_Iplocal([CountStartip],[CountEndip],[CountCountry])values('" + dr[0] + "'," + dr[1] + "," + dr[2] + ")";


                        }
                    }
                    catch
                    {
                        trans.Rollback();
                    }
                }
                

            }

  • 相关阅读:
    SQL考点例题解析
    数据交换技术
    网络安全的攻击手段
    实词和虚词
    VBA代码
    宏代码
    常用模块
    常用模块
    模块和包
    模块介绍
  • 原文地址:https://www.cnblogs.com/yzenet/p/2370285.html
Copyright © 2011-2022 走看看