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

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

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

导入到数据库后,打开数据库的表能看到数据已经导入到表里
展开
 我来答
百度网友a7339fa40
2011-10-18 · TA获得超过703个赞
知道小有建树答主
回答量:389
采纳率:0%
帮助的人:244万
展开全部
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就可以了。直接编译通过不可能的,自己看着办吧
匿名_热心网友
推荐于2016-08-20 · TA获得超过719个赞
知道大有可为答主
回答量:3827
采纳率:0%
帮助的人:8420万
展开全部
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的一些个属性设置,甚至不用写代码,就是一些展示设置参数的问题。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
du瓶邪
推荐于2018-05-15 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.7万
采纳率:100%
帮助的人:2938万
展开全部
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是取出的数据,可以插入数据库
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-10-18
展开全部
这个不是问题。建议好好回家做作业。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式