用C#语言编程将TXT文件里的数据读取保存(导入)到SQL数据库表中

最好具体能通过编译运行的。百度谷歌不到
TXT 文件
文件里有五千多行
文件名: 收盘报表.txt
第一列 股票代码
第二列 日期
第三列 价格

SQL新建的空表
数据库名 hello
表名 TABLE1

导入到数据库后,打开数据库的表能看到数据已经导入到表里

C#编程还分asp.net跟winform呢。。给你个简单的winform的实例代码
首先肯定是一个按钮
OleDbConnection conn = new OleDbConnection("sql连接字符串");
OleDbTransaction tran = null;
try
{
//把TXT文本转换为datatable
string sql = string.Format("select * from [Text;Database={0}].{1}", "这个是你的txt文件路径", “收盘报表.txt");
DataTable dt = new DataTable();
OleDbDataAdapter sda = new OleDbDataAdapter(sql, conn);
sda.Fill(dt);
if (dt == null)
{
MessageBox.Show("您导入的文档名字有误!请去掉空格或特殊字符!");
return;
}

//去掉空行
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i][0].ToString().Trim() == string.Empty)
{
dt.Rows.Remove(dt.Rows[i--]);
}
}
//事务开始
tran = conn.BeginTransaction();
OleDbCommand cmd = conn.CreateCommand();
cmd.Transaction = tran;
for (int i = 0; i < dt.Rows.Count; i++)
{
string[] str=dt.Rows[i][0].ToString().split(' ');//用空格区分你的三列
string sql_insert = string.Format("insert into TABLE1 (“字段1”,"字段2","字段3") values ('{0}','{1}','{2}')", str[0],str[1].str[2]);
cmd.CommandText = sql_insert;
cmd.ExecuteNonQuery();
}
tran.Commit();
}
MessageBox.Show("导入成功!");
}
catch
{
MessageBox.Show("导入失败!");
tran.Rollback();
}
finally
{
conn.Dispose();
}
如果是数据库是sqlserver,只要把OleDb换成Sql就可以了。直接编译通过不可能的,自己看着办吧
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-08-20
ResultSet rs = Statemnet.excuteQuery();
List list1 = new ArrayList<String>();
List list2 = new ArrayList<String>();

while(rs.hasnext()){
list1.add(rs.next.getString(0));
list2.add(rs.next.getString(1));
}
然后可以再遍历这些集合输出出去。
多看看rs的api或者datagridview的一些个属性设置,甚至不用写代码,就是一些展示设置参数的问题。本回答被提问者采纳
第2个回答  推荐于2018-05-15
path = @"D:/test.txt";//读取文件txt
using (FileStream fs = new FileStream(path, FileMode.Open))
{
using (StreamReader sr = new StreamReader(fs))
{
while (!sr.EndOfStream)
{
string sLine = sr.ReadLine();
if (sLine.Length < 1)
{
continue;
}
string[] sRecordKbn = sLine.split(' ');//过滤空格
forach(string s in sRecordKbn )
{
//s是取出的数据,可以插入数据库
}
}本回答被网友采纳
第3个回答  2011-10-18
这个不是问题。建议好好回家做作业。
相似回答