如何从 URI 读取文件中的所有行?
How to read all lines in a file from a URI?
我目前正在阅读 .srt
的内容,如下所示:
var assetURL = "some url";
var textFromFile = (new WebClient()).DownloadString(assetURL);
但是,我需要能够遍历所有行,如下所示:
string[] text = File.ReadAllLines(@"subs.srt");
foreach (string line in text)
{
// Do something
}
我不能那样做,因为 File.ReadAllLines
不支持 URI。知道我该怎么做吗?
您始终可以按 Environment.NewLine
with String.Split
:
拆分字符串
string[] lines = textFromFile.Split(new []{ Environment.NewLine }, StringSplitOptions.None);
您可以使用 StringReader
:
using (var sr = new StringReader(textFromFile))
{
string line;
while ((line = sr.ReadLine()) != null)
{
// sth with a line
}
}
为什么它比按 Environment.NewLine
拆分更好?它会处理这两种情况 - 当换行符是 \r\n
或 \n
.
我目前正在阅读 .srt
的内容,如下所示:
var assetURL = "some url";
var textFromFile = (new WebClient()).DownloadString(assetURL);
但是,我需要能够遍历所有行,如下所示:
string[] text = File.ReadAllLines(@"subs.srt");
foreach (string line in text)
{
// Do something
}
我不能那样做,因为 File.ReadAllLines
不支持 URI。知道我该怎么做吗?
您始终可以按 Environment.NewLine
with String.Split
:
string[] lines = textFromFile.Split(new []{ Environment.NewLine }, StringSplitOptions.None);
您可以使用 StringReader
:
using (var sr = new StringReader(textFromFile))
{
string line;
while ((line = sr.ReadLine()) != null)
{
// sth with a line
}
}
为什么它比按 Environment.NewLine
拆分更好?它会处理这两种情况 - 当换行符是 \r\n
或 \n
.