public static ConcurrentDictionary <int, ISteig> ReadFile(String filePath)
        {
            FileHelperEngine <SteigRecord>     engine = new FileHelperEngine <SteigRecord>();
            ConcurrentDictionary <int, ISteig> steige = new ConcurrentDictionary <int, ISteig>();

            try {
                engine.ErrorManager.ErrorMode = ErrorMode.SaveAndContinue;
                engine.Encoding = Encoding.UTF8;
                SteigRecord[] res = engine.ReadFile(filePath);

                foreach (SteigRecord steig in res)
                {
                    //Übernehmen der eingelesenen Daten in das Programm-Model:
                    ISteig transport = new Steig();
                    Point  stLoc     = new Point(steig.XKoord, steig.YKoord);

                    transport.Id             = steig.Id;
                    transport.Bereich        = steig.Bereich;
                    transport.HaltestellenId = steig.HaltestellenId;
                    transport.LinienId       = steig.LinienId;
                    transport.Rbl            = steig.Rbl;
                    transport.Reihenfolge    = steig.Reihenfolge;
                    transport.Name           = steig.Name;
                    transport.Location       = stLoc;
                    switch (steig.Richtung)
                    {
                    case "H": {
                        transport.Richtung = ERichtung.Hin;
                        break;
                    }

                    case "R": {
                        transport.Richtung = ERichtung.Rueck;
                        break;
                    }
                    }

                    //Schreiben des Models in Collection für den Rückgabewert:
                    steige.AddOrUpdate(transport.Id, transport, (key, oldValue) => transport);
                }
            } catch (Exception ex) {
                //Dokument konnte nicht geparst werden (Nicht vorhanden/geöffnet)
                throw new VtmParsingException("Beim Versuch die Steige zu parsen ist ein Fehler aufgetreten!", filePath, ex);
            }
            return(steige);
        }
Beispiel #2
0
 public void TestInitialize()
 {
     point     = new Point(123.4, 432.1);
     steig     = new Steig(1, 123, 123, ERichtung.Rueck, 23, 2356, 23, "U1-23", point);
     steigLeer = new Steig();
 }