在.NET上载时解析文本文件

时间:2016-08-15 20:56:02

标签: sql .net parsing

我有一个我需要的网络项目:

1.浏览文件并上传 2.以分号分析文件 3.将文件提交到服务器

正在上载的文件是.sql文件,其中每个SQL语句以分号(;)结尾。这个想法是每行解析1个SQL语句。 (源文件可能包含跨越20行的SQL语句,但第20行的分号表示该语句进入一行。

这对我来说大部分都是新手,但到目前为止我所拥有的是一个搜索文件的按钮,并将其存储到我的本地驱动器中。我稍后会担心确切的存储位置,但我现在感兴趣的是如何解析.sql文件,如上所述。任何想法从哪里开始将其纳入我的代码?

由于

HTML:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="FileUpload.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
   <%-- <form id="form1" runat="server"> --%> 
        <form id="form2" runat="server">
    <asp:FileUpload id="FileUploadControl" runat="server" />
    <asp:Button runat="server" id="UploadButton" text="Upload" onclick="UploadButton_Click" />
    <br /><br />
    <asp:Label runat="server" id="StatusLabel" text="Upload status: " />


</form>
</body>
</html>

CODE:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace FileUpload
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void UploadButton_Click(object sender, EventArgs e)
        {
            try
            {
                string filename = Path.GetFileName(FileUploadControl.FileName);
                FileUploadControl.SaveAs(Server.MapPath("~/") + filename);
                StatusLabel.Text = "Upload status: File uploaded!";
            }
            catch (Exception ex)
            {
                StatusLabel.Text = "Upload status: The file could not be uploaded. The following error occured: " + ex.Message;
            }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

上传文件后将其打开为文本文件并解析每一行或&#39 ;;&#39;作为sql命令。 打开文件 https://msdn.microsoft.com/en-us/library/db5x7c0d(v=vs.110).aspx

执行sql查询

SQL/C# - Best method for executing a query