想把TXT中的数据参入数据库,想这样用什么拆开
数据格式像这样的,无列名,PGSF-07-1D-V4 E MF-331(1.5) 0.00000 0
看起来像不定的空格隔开,不能用OLEDB
我这样拆,但是结果没有数据
while ((str2 = fileStream2.ReadLine()) != null)
{
//拆分字符串
string[] substr = str2.Split(' ');
--------------------编程问答-------------------- 没有数据?
是不是因为str2为空? --------------------编程问答-------------------- 试了一下 可以的啊
--------------------编程问答-------------------- ((str2 = fileStream2.ReadLine()) != null --------------------编程问答-------------------- 用\t试试
string aa = "PGSF-07-1D-V4 E MF-331(1.5) 0.00000 0";
string[] bb = aa.Split(' ');
还不行的话就用正则表达式 --------------------编程问答-------------------- 表述有误,不是没数据,是数据没有分割。跟踪了一下,果然是\t。
另外问一下,因为这个数据文件有几万行,是一行一行的插入数据表效率高,还是先读到datatable,然后批插入效率高 --------------------编程问答--------------------
用StringBuilder拼接一个大的sql语句,一次性执行,不需要用到DataTable --------------------编程问答--------------------
+1 --------------------编程问答-------------------- 应该是先读到datatable,然后批插入效率高 --------------------编程问答-------------------- 批插入效率高 --------------------编程问答-------------------- 这个对你有用:
public static void WriteTxt(string filePathName,bool append, List<string[]> ls)
{
StreamWriter fileWriter=new StreamWriter(filePathName,append,Encoding.Default);
foreach(string[] strArr in ls)
{
fileWriter.WriteLine(String.Join (“\t",strArr) ); //以tab为分隔
}
fileWriter.Flush();
fileWriter.Close();
}
补充:.NET技术 , C#