Java Core
TileMaps effizient aus Textdateien laden (2D-Array)
Verwendung von java.nio.file.Files zum Einlesen von Grid-Karten aus Textdateien. Vorgehen: Datei mittels Files.readAllLines(Path.of(path)) in eine List<String> laden. Abfangen von leeren Zeilen (lines.removeIf(String::isBlank)). Validierung auf konstante Zeilenlängen (Rechteck-Prüfung). Übertrag der Zeichen in ein int[reihe][spalte]-Grid für schnelle O(1)-Zugriffe.
Referenz:
Datei
1. Spielprojekt
· Klasse TileMap
public static TileMap loadFromFile(String path) throws IOException {
List<String> lines = Files.readAllLines(Path.of(path));
lines.removeIf(String::isBlank);
int height = lines.size();
int width = lines.get(0).length();
int[][] tiles = new int[height][width];
for (int row = 0; row < height; row++) {
String line = lines.get(row);
for (int col = 0; col < width; col++) {
tiles[row][col] = Character.getNumericValue(line.charAt(col));
}
}
return new TileMap(tiles);
}