Java用のタイルマップエディタを作成しようとしていますが、ファイルオープンに固執しています。ファイル自体を開くことはそれほど大したことではありませんが、テキストファイルに空白を入れるとすぐにランタイムエラーが発生します。各タイルは、イメージ(黒または灰色の四角形のatm)とソリッド(1)かどうか(0)で構成されています。現在、このような形式で保存されますタイルマップ:例えば繰り返しパターンのテキストファイルをリストに読み込みます
1:1 1:1 1:1 1:1 1:1 1:1
1:1 0:0 0:0 0:0 0:0 1:1
1:1 0:0 0:0 0:0 0:0 1:1
1:1 1:1 1:1 1:1 1:1 1:1
これは固体であり、プレイヤーをブロックします黒の壁とシンプルな部屋である可能性があります。 6x4タイルマップになります。 Format x:x(ここでは空白)をどのように定義できますか?
List<Integer> list = new ArrayList<Integer>();
File file = new File("file.txt");
BufferedReader reader = null;
try
{
reader = new BufferedReader(new FileReader(file));
String text = null;
while ((text = reader.readLine()) != null)
{
list.add(Integer.parseInt(text));
}
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
リストの各要素を正確に保存しようとしていますか?単一の1:1またはそれらの全ライン?コロンでいっぱいの行を解析しようとすると、例外が発生します。コロンを含むこの行を解析しようとしているのはなぜですか?あなたのintを解析したいなら、リストの各要素をどのように見せたいでしょうか? –
上記のコード例は、より基本的なレベルで動作させるためのものです。実際のケースでは私はList TileMapを持っています。 Tileはgetter()とsetters()でint型とint型からなるクラスです。だから、最初の1をIDとして格納し、2番目のIDをタイプとして保存し、リストの各Tile要素のように処理したいと思います。 編集:私が探しているのは、C#scanfのようなものです。引数%dまたは%rなど... –