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();
                    }
                }
                

            }

  • 相关阅读:
    linux 命令——19 find (转)
    linux 命令——18 locate (转)
    linux 命令——17 whereis(转)
    linux 命令——16 which(转)
    linux 命令——15 tail (转)
    linux 命令——14 head (转)
    Java for LeetCode 038 Count and Say
    Java for LeetCode 037 Sudoku Solver
    Java for LeetCode 036 Valid Sudoku
    Java for LeetCode 035 Search Insert Position
  • 原文地址:https://www.cnblogs.com/yzenet/p/2370285.html
Copyright © 2011-2022 走看看