StreamReader不接受字符串参数
本文关键字:参数 字符串 不接受 StreamReader | 更新日期: 2023-09-27 18:06:59
在VScode中使用dotnet-cli (dotnet new, dotnet restore)编写了一个新的c#程序。
然而,我似乎不能正确使用StreamReader。代码如下:
using System;
using System.IO;
namespace ConsoleApplication
{
public class Program
{
public static void Main(string[] args)
{
StreamReader test = new StreamReader("Test.txt");
}
}
}
我似乎无法运行这个程序。当我使用Dotnet运行,它说
'string'不能转换为'System.IO '。流"(netcoreapp1.0)
我尝试在Visual Studio Community中创建相同的程序,它运行良好,没有任何错误
要解决您的问题:您必须使用流作为对文件的基本访问:
using(var fs = new FileStream("file.txt", FileMode.Open, FileAccess.Read))
using (var sr = new System.IO.StreamReader(fs)){
//Read file via sr.Read(), sr.ReadLine, ...
}
}
由于StreamReader
和FileStream
实现了IDisposable
,它们将被处理,因为使用子句,所以你不需要写一个调用.Close()
或.Dispose()
(如@TaW所说)。