Konwertowanie liczb z pliku.

0

Witam. Chcę skonwertować liczby w zapisanym pliku txt. Napotykam jednak pewien problem :
ArgumentNullException was unhandled
An unhandled exception of type 'System.ArgumentNullException' occurred in mscorlib.dll
Dodatkowo zamiast wyświetlić normalnej liczby w konsoli wyświetla się:
System.Collections.Generic.List'1(System.Int32)

Proszę o pomoc.

 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HomeworkLINQ
{
    class Program
    {
        static void Main(string[] args)
        {
            FileWritting.FileWrite();
            LINQTester.FileRead();
        }
    }
}

--------klasa --------
using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;

namespace HomeworkLINQ
{
    class FileWritting
    {
        public static void FileWrite()
        {
            FileStream fileStream = new FileStream("Data.txt", FileMode.Create, FileAccess.Write);
            StreamWriter streamWriter = new StreamWriter(fileStream);

            streamWriter.WriteLine("1");
            streamWriter.WriteLine("5");
            streamWriter.WriteLine("9");
            streamWriter.WriteLine("-100");
            streamWriter.WriteLine("0");
            streamWriter.WriteLine("100");
            streamWriter.WriteLine("1");
            streamWriter.WriteLine("54");
            streamWriter.WriteLine("1000");
            streamWriter.WriteLine("-4");
            streamWriter.WriteLine("-5");
            streamWriter.WriteLine("-4");
            streamWriter.WriteLine("100");
            streamWriter.WriteLine("32");
            streamWriter.WriteLine("20");
            streamWriter.WriteLine("19");
            streamWriter.WriteLine("99");
            streamWriter.Close();
            fileStream.Close();
        }
    }
}

-----klasa2-------
using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;

namespace HomeworkLINQ
{
    class LINQTester
    {

        public static void FileRead()
        {
            FileStream fileStream = new FileStream("Data.txt", FileMode.Open, FileAccess.Read);
            StreamReader streamReader = new StreamReader(fileStream);

            for (int i = 0; i <= NumberOfLines(); i++)
            {
                var Dane = new List<int>();
                Dane.Add(int.Parse(streamReader.ReadLine()));  // w tej pętli zachodzi błąd
                Console.WriteLine(Dane);
            }

            streamReader.Close();
            fileStream.Close();

        }

        public static int NumberOfLines()
        {
            int number = 0;
            foreach (string line in File.ReadLines("Data.txt"))
            {
                if (line != String.Empty) ++number;
            }
            return number;
        }

    }
}

0

Przecież Twoja zmienna Dane to lista, zatem dlaczego w Twoim mniemaniu na standardowym wyjściu powinna się wyświetlić liczba, a nie wartość wskaźnika na obiekt?

1 użytkowników online, w tym zalogowanych: 0, gości: 1