asp.net中将文本文件内容导入到sql server数据库

本文介绍了一个实现从记事本上传TXT文件,并将数据发布到数据库的过程。包括文件上传按钮的代码实现,随机文件命名逻辑,以及数据如何通过BULK INSERT语句导入到数据库的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  以例子说明:

记事本内容显示如上图显示

数据库字段显示如下图显示

在程序中界面如下(选择上传文件,点击上传,文件位置会在文本框中显示,点击发布,则记事本数据发布到数据库中):

asp.net中将文本文件内容导入到sql server数据库 - 刘芳 - 学习

 

上传按钮代码:

 

View Code
string  name, fl;
        name 
= this .Txt.Text;

        
string  filename  =   "" ;
        
if  (File1.PostedFile.ContentLength  !=   0 )
        {
            
string  fn  =  File1.PostedFile.FileName;
            filename 
=  getRandomFilename();
            filename 
+=  fn.Substring(fn.LastIndexOf( " . " ));
            
if  ((fn.Substring(fn.LastIndexOf( " . " +   1 ).ToLower()  ==   " txt " ))
            {
                
if  (File1.PostedFile.ContentLength  >   25000000 )
                {
                    Response.Write(
" <script>alert('不得上传大于25M的文件!')</script> " );
                }
                
else
                {
                    File1.PostedFile.SaveAs(Server.MapPath(
" ~/txt " +   " / "   +  filename);
                }
            }
            
else
            {
                Response.Write(
" <script> alert(' "   +  fn.Substring(fn.LastIndexOf( " . " +   1 ).ToLower()  +   " 请选择格式为“txt”的文件')</script> " );
                
return ;
            }


        }
        fl 
=   " txt\\ "   +  filename;
        
this .Txt.Text  =  fl;

 

命名记事本文件名代码:

 

View Code
static   public   string  getRandomFilename()
    {
        System.Random rand 
=   new  System.Random();
        DateTime now 
=  DateTime.Now;
        
string  str  =   "" ;
        str 
+=  now.Year.ToString();
        str 
+=  now.Month.ToString();
        str 
+=  now.Day.ToString();
        str 
+=  now.Hour.ToString();
        str 
+=  now.Minute.ToString();
        str 
+=  now.Second.ToString();
        str 
+=  rand.Next( 0 1000 );
        
return  str;

    }

 

 

数据发布到数据库代码:

 

 

string f0=this.Txt.Text;
        string f ="E:\\edt_manager\\"+f0;//获取文件存放路径
        string sql = "BULK INSERT txt_table FROM '"+f+"' WITH (FIELDTERMINATOR = ',',ROWTERMINATOR = '\n') ";//插入数据
        edt.ExeSql(sql);

edt为类文件,连接数据库。以上就可以实现了。

 

 

转载于:https://www.cnblogs.com/weixing/archive/2011/05/04/2036555.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值