パソコンの買い替えに伴い、Javaのコンパイラをバージョンアップした。
PS C:\Users\hatad> java -Xmx6g -classpath ./class Util -encode kanto Exception in thread "main" org.xml.sax.SAXParseException; systemId: file:/c:/osm/kanto.osm; lineNumber: 2; columnNumber: 1; プロローグにはコンテンツを指定できません。
osmconvertもバージョンアップしたため、原因は encoder.java にあるとは限らない。
また、リダイレクトでファイルに出力すると、ファイルサイズが巨大になり、時間もかかる問題がある。 パイプで osmconvert の出力を受ける方が良いかもしれない。 しかし、SAXParser を使うのが難しいかもしれない。
急ぐ話ではないので、じっくり考えてみよう。
OSMファイルの1行目をプリントした結果、どうやら osmconvert が BOM をつけるようになったようだ。
また、ファイルサイズが2倍になるので、どこかに問題がある。 したがって、解凍には osmconvert の代わりに osmosis を用いることにした。