从上传的文件中读取字符串

时间:2013-07-17 14:14:00

标签: c# asp.net file-upload

我有一个包含一列数字的文件,我希望将其读入字符串。但是,该文件不是使用我的硬盘上的位置导入的,而是通过FileUpload控件上传的。

我想知道是否有一种方法可以在此文件的文本中阅读。我查看了StreamReader,但这要求我有一个字符串,它是文件的路径名。

还有另一种解决方法吗?

谢谢:)

3 个答案:

答案 0 :(得分:3)

StreamReader需要流,而不是路径。根据MSDN(http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.filecontent.aspx)上的文档,您可以使用FileUpload控件的FileContent成员并将其提供给StreamReader。

答案 1 :(得分:1)

假设您正在使用ASP.NET(C#只是一种编程语言),FileUpload控件会将文件保存在服务器上一个临时位置,该位置可供您的会话使用。

然后你所要做的就是打开临时文件并读取它的内容(使用StreamReader或其他东西)

答案 2 :(得分:1)

这是:Looping trough lines of txt file uploaded via FileUpload control

的副本

建议使用此解决方案,将FileUpload.File内容传递给StreamReader并循环遍历内容:

{

    FileUpload fu = FileUpload1; 
    if (fu.HasFile)  
    {
         StreamReader reader = new StreamReader(fu.FileContent);
                        do
                        {
                            string textLine = reader.ReadLine();

                            // do your coding 
                            //Loop trough txt file and add lines to ListBox1  

                        }
                        while (reader.Peek() != -1);
                        reader.Close();
                    }
                    }
}