Исключение нулевой ссылки в C #

Я испытываю «исключение нулевой ссылки», когда пытаюсь вернуть значение из структуры.

вот код:

AssetItem item = new AssetItem(); 

        item = initModified();

        bool found = false;
        int index = getIndex(barcode);
        string modifiedFile = filepath + "Modified\\" + dir + "\\" + index + ".asdt";

        if(File.Exists(modifiedFile))
        {   
            using(StreamReader reader = new StreamReader(modifiedFile))
            {
                string line = reader.ReadLine();
                while(line.Trim()!="")
                {
                    string[] split = line.Split(',');
                    if(split[1]==barcode)
                    {
                        found = true;
                        break;
                    }
                    line = reader.ReadLine();
                }
                reader.Close();
            }
        }

        if(found)
        {
            item.modified = true; 
        }
        else
        {
            item.modified = false;
        }


        return item;

Я инициализирую элемент, вызывая подпрограмму, содержащую этот item.modified = false. После проверки того, что файл существует, я использовал потоковый ридер, чтобы прочитать строки файла одну за другой, пока он не найдет конкретную строку и не остановится. Проблема в том, что он проверяет, существует ли файл и не находит ли конкретную строку. Он возвращает ноль, даже если я инициализирую элемент в false и устанавливаю его в false, когда он не находит строку. Примечание: это происходит редко и работает нормально, когда я обращаюсь к другим файлам для чтения и даже к тому же файлу, который возвращает ноль.

Примечание. Другая проблема, с которой я столкнулся, заключается в том, что она пропускает строку, которую читает.

Что может быть причиной этого?

Ответы на вопрос(0)

Ваш ответ на вопрос