public static StationRoutes Read(string stationDistancesPath) { StationRoutes newStationRoutes = new StationRoutes(); string[] lines = File.ReadAllLines(stationDistancesPath); foreach (string line in lines) { int[] nums = Array.ConvertAll(line.Split(new char[] { ' ' }), int.Parse); Route firstRoute = new Route(nums[0], nums[1], nums[2]); Route secondRoute = new Route(nums[1], nums[0], nums[2]); newStationRoutes.AddRoute(firstRoute); newStationRoutes.AddRoute(secondRoute); } return(newStationRoutes); }
public static TrainTimeTable Read(string stationDistancesPath, string trainsRoutesPath) { StationRoutes stationRoutes = StationDistancesProvider.Read(stationDistancesPath); TrainTimeTable trainTime_Table = new TrainTimeTable(); string[] lines = File.ReadAllLines(trainsRoutesPath); foreach (string line in lines) { int[] nums = Array.ConvertAll(line.Split(new char[] { ' ' }), int.Parse); Train train = new Train(); for (int i = 0; i < nums.Length - 1; i++) { int lengthOfRoute = stationRoutes.FindLengthOfRoute(nums[i], nums[i + 1]); Route route = new Route(nums[i], nums[i + 1], lengthOfRoute); for (int j = 0; j < lengthOfRoute; j++) { train.AddRoute(route); } } trainTime_Table.AddTrainToAllTrains(train); } return(trainTime_Table); }