public void Read() { Reader reader = new Reader(Path.Combine(LocalDirectory, "ExampleFile.txt")); LineDataReader lineDataReader = new LineDataReader(reader, Encoding.UTF8); var lastRowIndex = 0; lineDataReader.Read((rowIndex, rowData) => { lastRowIndex = rowIndex; switch (rowIndex) { case 0: Assert.AreEqual(rowData, "Line1"); break; case 1: Assert.AreEqual(rowData, "Line2"); break; case 2: Assert.AreEqual(rowData, ""); break; case 3: Assert.AreEqual(rowData, "Line3"); break; default: break; } }); Assert.AreEqual(lastRowIndex, 3); }
/// <summary> /// 路線を指定して駅データをCSVに書き出します。 /// </summary> /// <param name="jrhLine"></param> /// <returns></returns> public static string ToCsvData(JrhLine jrhLine) { var stringBuilder = new StringBuilder(); foreach (var station in LineDataReader.GetStations(jrhLine)) { stringBuilder.Append($"{station.StationId},{station.Name},{station.HiraName},{station.KataName},{station.EnglishName},{station.IsEndStation},{station.StationArea},{jrhLine.GetName()},{station.Position[jrhLine]}\n"); } return(stringBuilder.ToString()); }
/// <summary> /// 階層ボタンを初期化する処理。 /// </summary> /// <param name="hierarchyButton"></param> private void SetButons(HierarchyButtonLayout.RootHierarchyButton hierarchyButton) { foreach (var line in firstLines) { var firstButton = new HierarchyButtonLayout.HierarchyTextButton() { Text = line.GetName(), ArrowSignDirection = HierarchyButtonLayout.HierarchyTextButton.ArrowSignDirections.Right, }; firstButton.AddChildren(LineDataReader.GetStations(line).Select(std => { var stationButton = new HierarchyButtonLayout.HierarchyTextButton() { Text = std.Name, ArrowSignDirection = HierarchyButtonLayout.HierarchyTextButton.ArrowSignDirections.Right, }; stationButton.Click += StationButton_Click; return(stationButton); })); hierarchyButton.AddChild(firstButton); } var otherButton = new HierarchyButtonLayout.HierarchyTextButton() { Text = "その他の路線", ArrowSignDirection = HierarchyButtonLayout.HierarchyTextButton.ArrowSignDirections.Right, }; foreach (var othline in otherLines) { var othLineButton = new HierarchyButtonLayout.HierarchyTextButton() { Text = othline.GetName(), ArrowSignDirection = HierarchyButtonLayout.HierarchyTextButton.ArrowSignDirections.Right, }; othLineButton.AddChildren(LineDataReader.GetStations(othline).Select(std => { var stationButton = new HierarchyButtonLayout.HierarchyTextButton() { Text = std.Name, ArrowSignDirection = HierarchyButtonLayout.HierarchyTextButton.ArrowSignDirections.Right, }; stationButton.Click += StationButton_Click; return(stationButton); })); otherButton.AddChild(othLineButton); } hierarchyButton.AddChild(otherButton); }
public void Read() { Reader reader = new Reader(Path.Combine(LocalDirectory, "ExampleFile.csv")); LineDataReader lineDataReader = new LineDataReader(reader, Encoding.UTF8); CSVFormatter csvFormatter = new CSVFormatter(lineDataReader); int lastRowIndex = 0; csvFormatter.Read((rowIndex, columns) => { lastRowIndex = rowIndex; switch (rowIndex) { case 0: Assert.AreEqual(columns[0], "NAME"); Assert.AreEqual(columns[1], "SURNAME"); Assert.AreEqual(columns[2], "OLD"); break; case 1: Assert.AreEqual(columns[0], "MUHAMMED"); Assert.AreEqual(columns[1], "KANDEMIR"); Assert.AreEqual(columns[2], "23"); break; case 2: Assert.AreEqual(columns[0], "HAMZA"); Assert.AreEqual(columns[1], "KANDEMIR"); Assert.AreEqual(columns[2], "19"); break; case 3: Assert.AreEqual(columns[0], "MUHAMMED"); Assert.AreEqual(columns[1], "KANDEMIR"); Assert.AreEqual(columns[2], "2\"3"); break; case 4: Assert.AreEqual(columns[0], "\"HAMZA"); Assert.AreEqual(columns[1], "KAN\"DEMIR"); Assert.AreEqual(columns[2], "1\"\"9\""); break; case 5: Assert.AreEqual(columns[0], "MUHAMMED"); Assert.AreEqual(columns[1], "KANDEMIR"); Assert.AreEqual(columns[2], "23"); break; case 6: Assert.AreEqual(columns[0], "HAMZA"); Assert.AreEqual(columns[1], "KAN\"DEMIR"); Assert.AreEqual(columns[2], "1\"\"9\""); break; default: break; } }); Assert.AreEqual(lastRowIndex, 6); }