有没有办法在 gzip 文件上使用单行 ReadAllLines?
var pnDates = File.ReadAllLines("C:\myfile.gz");
我可以用 GZipStream 封装文件吗?
最佳答案
不,File.ReadAllLines()
将指定的文件视为文本文件。一个 zipfile 不是那个。自己做很简单:
public IEnumerable<string> ReadAllZippedLines(string filename)
{
using (var fileStream = File.OpenRead(filename))
{
using (var gzipStream = new GZipStream(fileStream, CompressionMode.Decompress))
{
using (var reader = new StreamReader(gzipStream))
{
yield return reader.ReadLine();
}
}
}
}
关于c# - 我如何将 ReadAllLines 与 gzip 文件一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27147815/