我有一个文件,其中包含我希望读入字符串的一列数字。但是,该文件不是使用我的硬盘上的位置导入的,而是通过 FileUpload 控件上传的。
我想知道是否有一种方法可以从该文件中读取文本。我已经查看了 StreamReader,但这需要我有一个作为文件路径名的字符串。
还有其他方法吗?
谢谢 :)
我有一个文件,其中包含我希望读入字符串的一列数字。但是,该文件不是使用我的硬盘上的位置导入的,而是通过 FileUpload 控件上传的。
我想知道是否有一种方法可以从该文件中读取文本。我已经查看了 StreamReader,但这需要我有一个作为文件路径名的字符串。
还有其他方法吗?
谢谢 :)
AStreamReader
需要流,而不是路径。根据 MSDN 上的文档 ( http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.filecontent.aspx ),您可以使用 FileUpload 控件的 FileContent 成员并提供进入 StreamReader。
假设您正在使用 ASP.NET(C# 只是一种编程语言),FileUpload 控件会将服务器上的文件保存在可供会话使用的临时位置。
然后你所要做的就是打开临时文件并读取它的内容(使用 StreamReader 或其他东西)
这是一个副本:循环通过 FileUpload 控件上传的 txt 文件行
建议使用此解决方案,将 FileUpload.FileContent 传递给 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();
}
}
}