背过手! 2016-03-24 01:40 采纳率: 60%
浏览 2029
已结题

asp.net读取txt文件内容,并把内容全部导入到数据库表里

 string textName = TextBox1.Text;
        string name = TextBox2.Text;
        DateTime time = DateTime.Now;
        if (FileUpload1.PostedFile.InputStream.Length < 1)
        {
            Label1.Text = "请选择文件";
            return;
        }
        string FileName = FileUpload1.FileName;
        if (FileName.ToLower().IndexOf(".txt") == -1)
        {
            Label1.Text = "请选择文本文件。";
            return;
        }
        int FileLen = FileUpload1.PostedFile.ContentLength;
        byte[] input = new byte[FileLen];
        Stream UpLoadStream = FileUpload1.PostedFile.InputStream;
        UpLoadStream.Read(input, 0, FileLen);
        UpLoadStream.Position = 0;
        StreamReader sr = new StreamReader(UpLoadStream, System.Text.Encoding.Default);
        String content = sr.ReadToEnd();
        sr.Close();
        UpLoadStream.Close();
        UpLoadStream = null;
        sr = null;
        SqlConnection conn = sc.getSqlConnection();
        conn.Open();
        String sql = "insert into txt(textName,masName,text,time) Values('"+textName+"','"+name+"','"+content+"','"+time+"')";

        SqlCommand cmd = new SqlCommand(sql, conn);


        int i = cmd.ExecuteNonQuery();
        if (i == 1)
        {
            Response.Write("<script>alert('上传成功');</script>");
        }
        conn.Close();

图片说明

运行报错:“/”应用程序中的服务器错误。
数据类型 varchar 和 varchar 在 '|' 运算符中不兼容。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 数据类型 varchar 和 varchar 在 '|' 运算符中不兼容。

源错误:

行 59:
行 60:

行 61: int i = cmd.ExecuteNonQuery();
行 62: if (i == 1)
行 63: {

源文件: f:\C#\导入\frist.aspx.cs 行: 61

堆栈跟踪:

[SqlException (0x80131904): 数据类型 varchar 和 varchar 在 '|' 运算符中不兼容。]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) +2442030
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action
1 wrapCloseInAction) +5736648
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +628
System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +3731
System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) +940
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) +272
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +280
frist.Button1_Click(Object sender, EventArgs e) in f:\C#\导入\frist.aspx.cs:61
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9692746
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +108
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +12
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +15
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3562

版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.6.1073.0

  • 写回答

2条回答 默认 最新

  • 把分全给哥 2016-03-24 02:03
    关注

    varchar类型的数据不能做与运算

    评论

报告相同问题?

悬赏问题

  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏