Вот код, который я использую для чтения из файла:
string myPath = "file.txt";
using (StreamReader sr = new StreamReader(myPath))
{
while (!sr.EndOfStream)
{
Console.WriteLine(sr.ReadLine());
}
sr.Close();
}
Если я помещу этот код в Main () в файле Program.cs, все будет работать как положено.Тем не менее, я создал собственный класс с методом для выполнения этого точного кода, и я получаю красные линии под myPath , говоря «Аргумент 1: невозможно преобразовать из« строки »в« System.IO ».Stream ", и я получаю красные линии под sr.Close () , говоря ". StreamReader не содержит определения для Close и нет доступного метода расширения Close, принимающегопервый аргумент типа 'StreamReader' может быть найден ".
Например, мой метод класса выглядит примерно так ...
public void ReadFile() {
string myPath = "file.txt";
using (StreamReader sr = new StreamReader(myPath)) // Red lines under myPath
{
while (!sr.EndOfStream)
{
Console.WriteLine(sr.ReadLine());
}
sr.Close(); // Red lines under Close
}
}
И Program.cs, и мойУ пользовательского класса с использованием System.IO; также наверху.
Есть идеи о том, что мне не хватает?
Спасибо!
ОБНОВЛЕНИЕ:
Весь класс выглядит так ...
using System;
using System.IO;
namespace FileReaderLibrary
{
public class FileReader
{
public void ReadFile() {
string myPath = "file.txt";
using (StreamReader sr = new StreamReader(myPath)) // Red lines under myPath
{
while (!sr.EndOfStream)
{
Console.WriteLine(sr.ReadLine());
}
sr.Close(); // Red lines under Close
}
}
}
}