[英]Reading line by line an inputstream
我有一個網站將大型文件發布到我的服務器。 我需要逐行閱讀或至少能夠拆分它。 它有2000頁長。
現在,我有:
if (file != null && file.ContentLength > 0)
{
using (file.InputStream)
{
//Looking for this part
}
}
謝謝,
菲爾
嘗試這個:
public IEnumerable<string> ReadLines(Func<Stream> streamProvider,
Encoding encoding)
{
using (var stream = streamProvider())
using (var reader = new StreamReader(stream, encoding))
{
string line;
while ((line = reader.ReadLine()) != null)
{
yield return line;
}
}
}
因此:
var lines = ReadLines(() => file.InputStream, Encoding.UTF8).ToArray();
希望對您有所幫助
我遵循@Gusman的使用streamreader的想法。
stream = new StreamReader(file.InputStream);
using (stream)
{
while (stream.Peek() >= 0)
{
var line = stream.ReadLine();
//some stuff
}
}
也謝謝@Ali
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.