Ahoj, potrebuji pomoci se semestralkou do skoly. Mam nacitat binarni soubor a presne nevim, jak na to.
public class Terr {
static int i = 0;
public static void main(String args[]) throws FileNotFoundException, IOException {
File file = new File("flat128.ter");
InputStream imput = new FileInputStream(file);
for (int j = 0; j < file.length(); j++) {
System.out.println(imput.read()+ " ");
}
}
}
Tohle je moje testovaci trida. SOubor se nacte a vypise tohle:
0
0
0
128
0
0
0
128
0
0
0
32
0
0
0
64
0
0
0
64
0
0
0
64
0
0
0
1
0
pokracuje to......
format souboru je takovyhle:
Formát dat je následující: soubor je binární, je v něm (6 + M × N) celých 32bitových čísel <W><H><XS><YS><XT><YT><Z11><Z21>…<ZW1><Z12><Z22>…<ZWH>, kde <W> udává šířku mapy (počet sloupců), <H> udává výšku mapy (počet řádků), <XS> a <YS> představují polohu střelce (sloupec, řádek), <XT> a <YT> představují polohu cíle (sloupec, řádek) a <ZXY> je nadmořská výška na pozici X,Y (v metrech). Nadmořské výšky jsou tedy v sou-boru uloženy „po řádcích“, a to od „západu“ k „východu“, řádky jsou uloženy od „severu“ k „jihu“.
Neumim z toho bin souboru ty hodnoty dostat. Muzete i poradit? Chápu spravne, ze nacitam dvojkovou soustavu?? Takze bych mel cist po bytech? Díky za rady