如何在 ASP.NET MVC3 中上传和读取 CSV 文件

发布于 2024-10-18 12:12:54 字数 282 浏览 2 评论 0原文

我正在开发一个项目,需要上传 CSV 文件并阅读它。 我正在使用 Visual Studio 2010 和 MVC3 和 C# 语言。

如果我要使用 html fileuplaod 控件,我该如何获取上传的文件并在客户端本身读取它,而不将文件保存在服务器中。 我必须使用jquery吗? 我已经搜索过,但没有找到满足我要求的解决方案。我对 MVC3 和 CSV 文件处理很陌生,并且很困惑。

*上传 .csv 文件并读取它以将其保存在数据库中的最简单方法是什么。

一个明确的解决方案将不胜感激。谢谢。

I am working on a project and I need to upload a CSV file and read it.
I am working in Visual Studio 2010 and MVC3 and C# language.

If I am to use html fileuplaod control, how I am suppose to take the uploaded file and read it in the client side itself without saving the file in the server.
Do I have to use the jquery?
I have searched but did not get solution to meet my requirements. I am new to MVC3 and CSV file handling and quite confused.

*What is the easiest way to upload a .csv file and read it in order to save it in the database.

A clear solution would be highly appreciated.Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

心是晴朗的。 2024-10-25 12:12:54

您可以做的是将文件保存在服务器上,然后在读取其中的内容后您可以删除该文件。

我认为您无法从客户端阅读。您必须将其上传到您的服务器上才能阅读。

using (StreamReader CsvReader = new StreamReader(input_file))
                {
                    string inputLine = "";

                    while ((inputLine = CsvReader.ReadLine()) != null)
                    {
                        values.Add(inputLine.Trim().Replace(",", "").Replace(" ", ""));
                    }
                    CsvReader.Close();
                    return values;
                }

What you can do is save the file on server, then after you read the content from them you can delete the file.

I think there is a no way you can read the from client side. You must upload it on ur server to read that.

using (StreamReader CsvReader = new StreamReader(input_file))
                {
                    string inputLine = "";

                    while ((inputLine = CsvReader.ReadLine()) != null)
                    {
                        values.Add(inputLine.Trim().Replace(",", "").Replace(" ", ""));
                    }
                    CsvReader.Close();
                    return values;
                }
生来就爱笑 2024-10-25 12:12:54
    private async Task<string> ProcessAsync(string surveyId)
    {           if(!Request.Content.IsMimeMultipartContent())
        {
            return "|UnsupportedMediaType";
        }

        try
        {
            var provider = new MultipartMemoryStreamProvider();

            await Request.Content.LoadIntoBufferAsync().ConfigureAwait(false);
            await Request.Content.ReadAsMultipartAsync(provider).ConfigureAwait(false);

            HttpContent content = provider.Contents.FirstOrDefault();

            if(content != null)
            {
                Stream stream = await content.ReadAsStreamAsync().ConfigureAwait(false);

                using (StreamReader CsvReader = new StreamReader(stream))
                {
                    string inputLine = "";

                    while ((inputLine = CsvReader.ReadLine()) != null)
                    {
                        string[] vars = inputLine.Split(',');


                    }
                    CsvReader.Close();
                    //return values;
                }

            }
        }
        catch(Exception e)
        {
            return e.ToString();
        }

        return "Nothing To Process";
 }
    private async Task<string> ProcessAsync(string surveyId)
    {           if(!Request.Content.IsMimeMultipartContent())
        {
            return "|UnsupportedMediaType";
        }

        try
        {
            var provider = new MultipartMemoryStreamProvider();

            await Request.Content.LoadIntoBufferAsync().ConfigureAwait(false);
            await Request.Content.ReadAsMultipartAsync(provider).ConfigureAwait(false);

            HttpContent content = provider.Contents.FirstOrDefault();

            if(content != null)
            {
                Stream stream = await content.ReadAsStreamAsync().ConfigureAwait(false);

                using (StreamReader CsvReader = new StreamReader(stream))
                {
                    string inputLine = "";

                    while ((inputLine = CsvReader.ReadLine()) != null)
                    {
                        string[] vars = inputLine.Split(',');


                    }
                    CsvReader.Close();
                    //return values;
                }

            }
        }
        catch(Exception e)
        {
            return e.ToString();
        }

        return "Nothing To Process";
 }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文