Witam wszystkich.
Mam mały problem z java me. Otóż znalazłem w sieci jak napisać grę platformową. Wszystko ładnie, ale natknąłem się na problem przy operacji na plikach. Kod wygląda jakby był pisany na zwykłą jave a nie na j2me, gdyż w java.io.* nie ma BufferedReader. I tu moja prośba. Czy można przerobić kod tak, aby nadawał się do J2ME?
import java.io.*;
public class EdytorPlansz {
private static short wShort(String s)
{
short wynik = 0;
try
{
wynik = Short.parseShort(s);
}
catch (NumberFormatException e)
{
wynik = Short.MAX_VALUE;
}
return wynik;
}
private static short zapisz(String tekst, BufferedReader wej,DataOutputStream wyj) throws IOException
{
System.out.println(tekst);
short b;
do
{
String temp = wej.readLine();
b = wShort(temp);
} while (b==Short.MIN_VALUE);
wyj.writeShort(b);
return b;
}
public static void main(String[] args)
{
DataOutputStream wyj;
String nazwa = "";
try
{
BufferedReader wej = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Podaj nazwe wejsciowego pliku:");
nazwa = wej.readLine();
wyj = newDataOutputStream(new FileOutputStream(nazwa));
zapisz("Podaj X poczatkowe",wej,wyj);
zapisz("Podaj Y poczatkowe",wej,wyj);
zapisz("Podaj X koncowe",wej,wyj);
zapisz("Podaj Y koncowe",wej,wyj);
short szerokosc = zapisz("Podaj szerokosc ekranu:",wej,wyj);
short wysokosc = zapisz("Podaj wysokosc ekranu:",wej,wyj);
short duzeX = zapisz("Podaj liczbe elementow planszy w poziomie:",wej,wyj);
short duzeY = zapisz("Podaj liczbe elementow planszy w pionie:",wej,wyj);
wyj.writeShort((duzeX*WYMIAR_PL/szerokosc)+1);
wyj.writeShort((duzeY*WYMIAR_PL/wysokosc)+1);
zapisz("Podaj X poczatkowej planszy:",wej,wyj);
zapisz("Podaj Y poczatkowej planszy:",wej,wyj);
for(int i=0;i<duzeY;i++)
for(int j=0;j<duzeX;j++)
zapisz("Podaj rodzaj elementu planszy dla elementu o wspolrzednych ("+j+","+i+")",wej,wyj);
short liczba = zapisz("Podaj liczbe potworkow:",wej,wyj);
for(int i=0;i<liczba;i++)
{
short b1 = zapisz("Podaj X poczatkowe potworka",wej,wyj);
short b2 = zapisz("Podaj X koncowe potworka",wej,wyj);
short by = zapisz("Podaj Y potworka:",wej,wyj);
if(b1<b2)
wyj.writeShort(1);
else
wyj.writeShort(0);
short planszaX = (short)((b1*WYMIAR_PL/szerokosc)+1);
short planszaY = (short)((by*WYMIAR_PL/wysokosc)+1);
wyj.writeShort(planszaX);
wyj.writeShort(planszaY);
}
wej.close();
wyj.close();
}
catch(Exception e)
{
if (nazwa!=null)
{
File f = new File(nazwa);
if (f.exists())
f.delete();
}
}
}
private static final int WYMIAR_PL = 16;
}
Z góry wielkie dzięki.