Parser.cs 663 B

123456789101112131415161718192021222324252627
  1. using System.Text.RegularExpressions;
  2. namespace Day17;
  3. public partial class Parser
  4. {
  5. [GeneratedRegex(@".*")]
  6. private partial Regex LineMatch();
  7. public Map Parse(string inputFile)
  8. {
  9. var lines = File.ReadAllLines(inputFile);
  10. var width = lines[0].Length;
  11. var height = lines.Length;
  12. var map = new Tile[width, height];
  13. for (var y = 0; y < height; y++)
  14. {
  15. for (var x = 0; x < width; x++)
  16. {
  17. map[x, y] = new Tile(x, y, int.Parse(lines[y][x].ToString()));
  18. }
  19. }
  20. return new Map(map, width, height);
  21. }
  22. }