Proszę o sprawdzenie tego programu. Jest to program do sprawdzania pogody na komórce. Chyba zrobiłam coś nie tak bo emulator powinien łączyć się z netem a sie nie łączy albo łączy ale bardzo wolno. poza tym w ogóle nie wiem czy to działa na realnym sprzęcie bo nie mam możliwości żeby to przestesować. Jeżeli znajdzie sie ktoś kto sprawdzi ten program i może coś poprawi lub zasugeruje to z góry dzięki.
A o to program:
klasa Dane
public class dane {
/** Creates a new instance of dane */
public dane() {
}
/** miejscowosc ktorej dotczy pogoda*/
public String miejscowosc;
/prognoza na dzis-teraz/
public String teraz_godzina;
public String teraz_temp;
public String teraz_cis;
public String teraz_wiatr;
public String teraz_snieg;
public String teraz_deszcz;
/prognoza na dzis-teraz/
public String wkrotce_godz;
public String wkrotce_temp;
public String wkrotce_cis;
public String wkrotce_wiatr;
public String wkrotce_snieg;
/prognoza ogolna/
//dzien 1
public String d1_nazwa;
public String d1_data;
public String d1_tempd;
public String d1_tempn;
public String d1_cis;
public String d1_snieg;
public String d1_deszcz;
public String d1_wiatr;
//dzien 2
public String d2_nazwa;
public String d2_data;
public String d2_tempd;
public String d2_tempn;
public String d2_cis;
public String d2_snieg;
public String d2_deszcz;
public String d2_wiatr;
//dzien 3
public String d3_nazwa;
public String d3_data;
public String d3_tempd;
public String d3_tempn;
public String d3_cis;
public String d3_snieg;
public String d3_deszcz;
public String d3_wiatr;
//dzien 4
public String d4_nazwa;
public String d4_data;
public String d4_tempd;
public String d4_tempn;
public String d4_cis;
public String d4_snieg;
public String d4_deszcz;
public String d4_wiatr;
//dzien 5
public String d5_nazwa;
public String d5_data;
public String d5_tempd;
public String d5_tempn;
public String d5_cis;
public String d5_snieg;
public String d5_deszcz;
public String d5_wiatr;
//dzien 6
public String d6_nazwa;
public String d6_data;
public String d6_tempd;
public String d6_tempn;
public String d6_cis;
public String d6_snieg;
public String d6_deszcz;
public String d6_wiatr;
}
klasa Formularz
import java.io.IOException;
import java.io.InputStream;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.Ticker;
public class Formularz extends Form implements CommandListener{
//private Command ile=new Command("ile",Command,ITEM,0);
private Command sciez=new Command("sciezka",Command.ITEM,0);
private Command connect=new Command("conn",Command.ITEM,0);
private Command strumien=new Command("strumien",Command.ITEM,0);
private Command wyswietl=new Command ("wyswietl",Command.ITEM,0);
private Command ilebajtow=new Command("ilebajtow",Command.ITEM,0);
public InputStream is;
private byte[] tab=new byte[21000];
private Image obraz;
public Formularz() {
super(" menu");
//dodaje wszystkie mozliwe elementy do formularza
//przewijany pasek (mozna go dodac rowniez do logo)
Ticker t=new Ticker("Pogoda Lite ;-)");
this.setTicker(t);
this.addCommand(connect);
this.addCommand(strumien);
this.addCommand(sciez);
this.addCommand(wyswietl);
this.addCommand(ilebajtow);
this.setCommandListener(this);
try{
obraz=Image.createImage("/obr.jpg");
this.append(obraz);
}catch (Exception e){
e.printStackTrace();
}
}
private String sciezka="http://pogoda.onet.pl/_i/gfx/sat/20070531_180000_m.jpg";
public HttpConnection conn;
public void commandAction(Command c, Displayable displayable) {
if(c==sciez)
this.append("\nsciezka="+sciezka);
if(c==connect)
this.append(getConn());
if(c==strumien)
this.append(getStrumien());
if(c==wyswietl)
{
}
if(c==ilebajtow) this.append(getIle());
}
private String getConn(){
this.conn=null;
try {
this.conn=(HttpConnection)Connector.open(sciezka,Connector.READ_WRITE);
} catch (IOException ex) {
System.out.println("\nnie udalo sie utworzyc obiektu conn" +
"wyjatek="+ex+"\n");
}
String wynik="\nconn="+conn.toString();
return wynik;
}
private String getStrumien(){
try {
this.is=conn.openInputStream();
} catch (IOException ex) {
this.append("\nnie udalo sie otworzyc strumienia InputStream. " +
"wyjatek="+ex+"\n");
}
String wynik="\nstrumien="+is.toString();
return wynik;
}
private byte[] getDane(){
String wynik="";
final int MAX = 21000;
byte[] buf = new byte[MAX];
try{
final int MAX2 =2000;
int od = 0;
int ile=0;
while (od < MAX) {
ile = is.read(buf,od, MAX-od);
if (ile < 0) {
break;
}
od += ile;
}
is.close();
}
catch (Exception e) {
System.out.println(e);
}
return buf;
}
String getIle()
{
int ile=0;
try {
ile=this.is.available();
} catch (IOException ex) {
ex.printStackTrace();
}
String wynik="bajtow:"+ile;
return wynik;
}
}
klasa Info
import javax.microedition.lcdui.Form;
public class info extends Form {
/** Creates a new instance of info */
public info() {
super(" ");
this.append("klasa info-do skonczenia");
}
}
klasa Menu
import javax.microedition.lcdui.ChoiceGroup;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.List;
public class menu implements CommandListener {
private Display ekran;
private List lista;
private Command wybierz;
/** Creates a new instance of menu */
public menu(Display ekran1) {
ekran=ekran1;
Image[] obr=null;
String [] wiersze={"SZUKAJ MIASTA","MIASTA ZAPISANE","POMOC","INFO"};
lista=new List("LISTA ",ChoiceGroup.IMPLICIT,wiersze,obr);
wybierz=new Command("wybierz",Command.OK,0);
lista.addCommand(wybierz);
ekran.setCurrent(lista);
lista.setCommandListener(this);
}
public void commandAction(Command c,Displayable displayable){
if(c==wybierz) {
if(lista.getSelectedIndex()==0){
szukaj_miasta sm=new szukaj_miasta(ekran);
ekran.setCurrent(sm);
}
if (lista.getSelectedIndex()==1){
zapisane z=new zapisane();
ekran.setCurrent(z);
}
if(lista.getSelectedIndex()==2){
pomoc p=new pomoc();
ekran.setCurrent(p);
}
if(lista.getSelectedIndex()==3){
info i=new info();
ekran.setCurrent(i);
}
}
}
}
miasta.txt
Aleksandrow Kujawski<" href="1,3497,38,miasto.html">Augustow<"1,262,38,miasto.html">Bartoszyce<"1,4348,38,miasto.html">Belchatow<"1,1137,38,miasto.html">Biala Podlaska<"1,939,38,miasto.html">Bialka Tatrzanska<"1,385,38,miasto.html">Bialobrzegi<"1,404,38,miasto.html">Bialogard<"1,3753,38,miasto.html">Bialystok<"1,1039,38,miasto.html">Bielsk Podlaski<"1,3640,38,miasto.html">Bielsko- Biala<"1,841,38,miasto.html">Bilgoraj<"1,864,38,miasto.html">Bochnia<"1,947,38,miasto.html">Boleslawiec<"1,3470,38,miasto.html">Braniewo<"1,972,38,miasto.html">Brenna<"1,884,38,miasto.html">Brodnica<"1,854,38,miasto.html">Brzeg<"1,1132,38,miasto.html">Brzesko<"1,3564,38,miasto.html">Brzozow<"1,3624,38,miasto.html">Bukowina Tatrzanska<"1,3566,38,miasto.html">Busko Zdroj<"1,4338,38,miasto.html">Bydgoszcz<"1,888,38,miasto.html">Bytom<"1,3644,38,miasto.html">Bytow<"1,1064,38,miasto.html"
klasa Midlet
import javax.microedition.midlet.;
import javax.microedition.lcdui.;
/**
*Midlet poczatkowy aplikacji od ktorego rozpoczyna sie dzialanie programu.
*Rysuje logo poczatkowe, odtwarza w tle muzyke
*/
public class Midlet extends MIDlet {
/*tworzy nowa instancje klasy MidletPoczatkowy/
public Midlet(){}
/*metoda wywolywana gdy aplikacja zostanie uruchomiona/
public void startApp() {
//zwraca ekran na ktorym bedziemy rysowac
//metoda getDisplay jest statyczna (w dokumentacji oznaczona jako static
//taka metode wywolujemy z nazwa klasy, a nie z obiektem
//parametrem tej metody jest obiekt typu MIDlet, wiec mozemy przekazac
//obiekt naszej klasy, poniewaz typy sie zgadzaja
/*przechowuje ekran/
Display ekran=Display.getDisplay(this);
/**przechowuje watek muzyki*/
WatekMuzyki muzyka = new WatekMuzyki();
/*przechowuje logo startowe/
logo tytul = new logo(this);
Formularz menu = new Formularz();
// pobieracz pob = new pobieracz();
menu men=new menu(ekran);
//wyswietlamy obiekt powitanie na ekranie
// ekran.setCurrent(pob);
try {
Thread.sleep(50);
}
catch (InterruptedException ex) {
System.out.println("nie udalo sie wstrzymac programu");
}
/*for(int i=0; i<24; i++){
// tytul.zwiekszWspolrzedne();
tytul.repaint();
try {
Thread.sleep(50);
}
catch (InterruptedException ex) {
System.out.println("nie udalo sie wstrzymac programu");
}
//animowanie napisu tytulowego
for(int j=0; j<25 ;j++){
tytul.przesun_gora();
tytul.repaint();
try {
Thread.sleep(50);
}
catch (InterruptedException ex) {
System.out.println("nie udalo sie wstrzymac programu");
}
}
// animowanie napisu wersji
for(int m=0; m<tytul.getWidth()/2 + 35 ;m++){
tytul.przesun_prawy();
tytul.repaint();
try {
Thread.sleep(50);
}
catch (InterruptedException ex) {
System.out.println("nie udalo sie wstrzymac programu");
}
}
//animowanie napisu autora
for(int k=0; k<tytul.getWidth()/2 + 45;k++){
tytul.przesun_lewy();
tytul.repaint();
try {
Thread.sleep(50);
}
catch (InterruptedException ex) {
System.out.println("nie udalo sie wstrzymac programu");
}
}}
/** Metoda wywolywana w czasie wywolywania klasy Alert*/
public void pauseApp() {
}
/**metoda wywolywana gdy aplikacjia zostanie zakonczona*/
public void destroyApp(boolean unconditional) {
}
}
klasa Pobieracz
import java.io.IOException;
import java.io.InputStream;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Display;
public class pobieracz extends Form {
public InputStream strumien;
private String adres="http://pogoda.onet.pl/";
private String sciezka;
public HttpConnection polaczenie;
private String strona;
private Display ekran;
//Gauge ga;
dane d;
/** Creates a new instance of pobieracz */
/do konstruktora przeslac sciezke/
public pobieracz (String dane) {
super("pobieracz");
this.append("klasa pobieracz");
sciezka=adres + dane;
dane d = new dane();
//ga = new Gauge("Postep",false,3,0);
//this.append(ga);
strona=pobierz();
//this.append(strona);
szukaj();
}
//ta funkcja otwiera polaczenie, pobiera strone i zwraca strone w postaci stringa
private String pobierz(){
this.polaczenie=null;
String wynik="";
try {
this.polaczenie=(HttpConnection)Connector.open(sciezka,Connector.READ_WRITE);
} catch (IOException ex) {
System.out.println("\nnie udalo sie utworzyc obiektu conn" +
"wyjatek="+ex+"\n");
}
try {
this.strumien=polaczenie.openInputStream();
} catch (IOException ex) {
// this.append("\nnie udalo sie otworzyc strumienia InputStream. " +
// "wyjatek="+ex+"\n");
}
//this.ga.setValue(1);
try{
final int MAX = 8000;
final int MAX2 =20000;
byte[] buf = new byte[MAX2];
int od = 0;
int ile=0;
while (od < MAX) {
ile = strumien.read(buf,od, MAX-od);
if (ile < 0) {
break;
}
od += ile;
}
// this.ga.setValue(2);
od=0;
while (od < MAX2) {
ile = strumien.read(buf,od, MAX2 - od);
if (ile < 0) {
break;
}
od += ile;
}
strumien.close();
String przeczytane = new String(buf, 0, od);
wynik=przeczytane;
}
catch (Exception e) {
System.out.println(e);
}
// this.ga.setValue(3);
return wynik;
}
private void szukaj(){
int indeks;
int pocz;
int kon;
String szukane;
//nazwa miejscowosci
pocz=strona.indexOf("<SPAN class=a32>");
kon=strona.indexOf(" ",pocz);
szukane=strona.substring(pocz+16,kon);
d.miejscowosc=szukane;
// godzina teraz
pocz=10 + strona.indexOf("ar2 gold",kon);
kon=strona.indexOf("</SPAN>",pocz);
szukane=strona.substring(pocz,kon);
d.teraz_godzina=szukane;
//temperatura teraz
pocz=strona.indexOf("emperatura",kon);
kon=strona.indexOf("</B>",pocz);
szukane=strona.substring(pocz + 12,kon);
d.teraz_temp=szukane;
//cisnienie teraz
pocz=strona.indexOf(">Ci",kon) + 43;
kon=strona.indexOf("<IMG src=",pocz);
szukane=strona.substring(pocz,kon);
d.teraz_cis=szukane;
//wiatr teraz
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz) + 4;
szukane=strona.substring(pocz,kon);
d.teraz_wiatr=szukane;
//snieg teraz
pocz=strona.indexOf("nieg:</TD>",kon)+34;
kon=strona.indexOf("mm</",pocz)+2;
szukane=strona.substring(pocz,kon);
d.teraz_snieg=szukane;
//deszcz teraz
pocz=strona.indexOf("eszcz:</TD>",kon)+ 35;
kon=strona.indexOf("mm</",pocz)+2;
szukane=strona.substring(pocz,kon);
d.teraz_deszcz=szukane;
// wkrotce godz
pocz=strona.indexOf("ar2 gold",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.wkrotce_godz=szukane;
//wkrotce temp
pocz=strona.indexOf("emperatura",kon)+12;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.wkrotce_temp=szukane;
//wkrotce cisn
pocz=strona.indexOf(">Ci",kon)+43;
kon=strona.indexOf("hPa <",pocz)+3;
szukane=strona.substring(pocz,kon);
d.wkrotce_cis=szukane;
//wkrotce wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.wkrotce_wiatr=szukane;
//wkrotce snieg
pocz=strona.indexOf("nieg:",kon) + 34;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.wkrotce_snieg=szukane;
//wkrotce deszcz
pocz=strona.indexOf("a1b pl2 pb2",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
//******** PROGNOZA OGOLNA ***************
//dzien 1 nazwa
pocz=strona.indexOf("ar2b gold",kon)+11;
kon=strona.indexOf("</SPAN>",pocz)-2;
szukane=strona.substring(pocz,kon);
d.d1_nazwa=szukane;
//dzien 1 data
pocz=strona.indexOf("ar2 gold",kon)+10;
kon=strona.indexOf("</SPA",pocz);
szukane=strona.substring(pocz,kon);
d.d1_data=szukane;
//dzien 1 temp w dzien
pocz=strona.indexOf("tura w dzi",kon)+14;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d1_tempd=szukane;
//dzien 1 temp w nocy
pocz=strona.indexOf("#FFFFFF",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d1_tempn=szukane;
//dzien1 cisnienie
pocz=strona.indexOf("pt2 pb6",kon)+9;
kon=strona.indexOf("hPa",pocz)+3;
szukane=strona.substring(pocz,kon);
d.d1_cis=szukane;
// dzien1 snieg
pocz=strona.indexOf("a1b pt4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d1_snieg=szukane;
//dzien1 deszcz
pocz=strona.indexOf("a1b pb4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d1_deszcz=szukane;
//dzien1 wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.d1_wiatr=szukane;
//dzien 2 nazwa
pocz=strona.indexOf("ar2b gold",kon)+11;
kon=strona.indexOf("</SPAN>",pocz)-2;
szukane=strona.substring(pocz,kon);
d.d2_nazwa=szukane;
//dzien 2 data
pocz=strona.indexOf("ar2 gold",kon)+10;
kon=strona.indexOf("</SPA",pocz);
szukane=strona.substring(pocz,kon);
d.d2_data=szukane;
//dzien 2 temp w dzien
pocz=strona.indexOf("tura w dzi",kon)+14;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d2_tempd=szukane;
//dzien 2 temp w nocy
pocz=strona.indexOf("#FFFFFF",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d2_tempn=szukane;
//dzien 2 cisnienie
pocz=strona.indexOf("pt2 pb6",kon)+9;
kon=strona.indexOf("hPa",pocz)+3;
szukane=strona.substring(pocz,kon);
d.d2_cis=szukane;
// dzien 2 snieg
pocz=strona.indexOf("a1b pt4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d2_snieg=szukane;
//dzien 2 deszcz
pocz=strona.indexOf("a1b pb4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d2_deszcz=szukane;
//dzien 2 wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.d2_wiatr=szukane;
//dzien 3 nazwa
pocz=strona.indexOf("ar2b gold",kon)+11;
kon=strona.indexOf("</SPAN>",pocz)-2;
szukane=strona.substring(pocz,kon);
d.d3_nazwa=szukane;
//dzien 3 data
pocz=strona.indexOf("ar2 gold",kon)+10;
kon=strona.indexOf("</SPA",pocz);
szukane=strona.substring(pocz,kon);
d.d3_data=szukane;
//dzien 3 temp w dzien
pocz=strona.indexOf("tura w dzi",kon)+14;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d3_tempd=szukane;
//dzien 3 temp w nocy
pocz=strona.indexOf("#FFFFFF",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d3_tempn=szukane;
//dzien 3 cisnienie
pocz=strona.indexOf("pt2 pb6",kon)+9;
kon=strona.indexOf("hPa",pocz)+3;
szukane=strona.substring(pocz,kon);
d.d3_cis=szukane;
// dzien 3 snieg
pocz=strona.indexOf("a1b pt4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d3_snieg=szukane;
//dzien 3 deszcz
pocz=strona.indexOf("a1b pb4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d3_deszcz=szukane;
//dzien 3 wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.d3_wiatr=szukane;
//dzien 4 nazwa
pocz=strona.indexOf("ar2b gold",kon)+11;
kon=strona.indexOf("</SPAN>",pocz)-2;
szukane=strona.substring(pocz,kon);
d.d4_nazwa=szukane;
//dzien 4 data
pocz=strona.indexOf("ar2 gold",kon)+10;
kon=strona.indexOf("</SPA",pocz);
szukane=strona.substring(pocz,kon);
d.d4_data=szukane;
//dzien 4 temp w dzien
pocz=strona.indexOf("tura w dzi",kon)+14;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d4_tempd=szukane;
//dzien 4 temp w nocy
pocz=strona.indexOf("#FFFFFF",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d4_tempn=szukane;
//dzien 4 cisnienie
pocz=strona.indexOf("pt2 pb6",kon)+9;
kon=strona.indexOf("hPa",pocz)+3;
szukane=strona.substring(pocz,kon);
d.d4_cis=szukane;
// dzien 4 snieg
pocz=strona.indexOf("a1b pt4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d4_snieg=szukane;
//dzien 4 deszcz
pocz=strona.indexOf("a1b pb4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d4_deszcz=szukane;
//dzien 4 wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.d4_wiatr=szukane;
//dzien 5 nazwa
pocz=strona.indexOf("ar2b gold",kon)+11;
kon=strona.indexOf("</SPAN>",pocz)-2;
szukane=strona.substring(pocz,kon);
d.d5_nazwa=szukane;
//dzien 6 temp w nocy
pocz=strona.indexOf("#FFFFFF",kon)+10;
kon=strona.indexOf("</",pocz);
szukane=strona.substring(pocz,kon);
d.d6_tempn=szukane;
//dzien 6 cisnienie
pocz=strona.indexOf("pt2 pb6",kon)+9;
kon=strona.indexOf("hPa",pocz)+3;
szukane=strona.substring(pocz,kon);
d.d6_cis=szukane;
// dzien 6 snieg
pocz=strona.indexOf("a1b pt4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d6_snieg=szukane;
//dzien 6 deszcz
pocz=strona.indexOf("a1b pb4 pl4",kon)+13;
kon=strona.indexOf("mm<",pocz)+2;
szukane=strona.substring(pocz,kon);
d.d6_deszcz=szukane;
//dzien 6 wiatr
pocz=strona.indexOf("absmiddle",kon)+11;
kon=strona.indexOf("km/h",pocz)+4;
szukane=strona.substring(pocz,kon);
d.d6_wiatr=szukane;
}
}
klasa Pogoda
}
}
klasa Pomoc
}
}
klasa SzukajMiasta
import java.io.InputStream;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
public class szukaj_miasta extends Form implements CommandListener {
private TextField pole;
private Command szukaj;
private String szukane;
private String miasta,lancuch2;
private String sciezka="";
private Display ekran;
/** Creates a new instance of szukaj_miasta */
public szukaj_miasta(Display ekran1) {
super("wyszukiwanie miasta");
ekran=ekran1;
miasta ="";
lancuch2="";
int dlugosc=0;
byte[] bufor=new byte[1024];
try{
InputStream in =getClass().getClass().getResourceAsStream("/miasta.txt");
while (dlugosc>-1){
lancuch2=new String(bufor,0,dlugosc);
miasta +=lancuch2;
dlugosc=in.read(bufor);
//this.append(miasta);
}
}
catch(Exception e){
e.printStackTrace();
}
szukaj=new Command("szukaj",Command.OK,0);
this.addCommand(szukaj);
this.append("Podaj miasto do wyszukania");
this.append("\n");
pole=new TextField("Szukaj","",20,TextField.ANY);
this.append(pole);
this.setCommandListener(this);
}
public void commandAction(Command c,Displayable displayable)
{
int od,pocz,kon;
if(c==szukaj){
szukane=pole.getString();
// this.append(szukane);
od= miasta.indexOf(szukane);
if(od==-1)this.append("nie znaleziono");
pocz=miasta.indexOf("<",od)+2;
kon=miasta.indexOf(">",pocz)-1;
sciezka=miasta.substring(pocz,kon);
this.append(sciezka);
Alert al=new Alert("alert");
//al.addCommand(powrot);
// al.setString("Nastapi polaczenie z internretem w celu pobrania aktualnej pogody,jesli chcesz kontynuowac wcisnij DONE");
pobieracz pob=new pobieracz(sciezka);
//ekran.setCurrent(al)
this.append("test2");
ekran.setCurrent(al,pob);
}
}
}
klasa Testowa
catch(Exception e){
e.printStackTrace();
}
szukaj=new Command("szukaj",Command.OK,0);
this.addCommand(szukaj);
this.append("Podaj miasto do wyszukania");
this.append("\n");
pole=new TextField("Szukaj","",20,TextField.ANY);
this.append(pole);
this.setCommandListener(this);
}
public void commandAction(Command c,Displayable displayable)
{
int od,pocz,kon;
if(c==szukaj){
szukane=pole.getString();
// this.append(szukane);
od= miasta.indexOf(szukane);
if(od==-1)this.append("nie znaleziono");
pocz=miasta.indexOf("<",od)+2;
kon=miasta.indexOf(">",pocz)-1;
sciezka=miasta.substring(pocz,kon);
this.append(sciezka);
Alert al=new Alert("alert");
//al.addCommand(powrot);
// al.setString("Nastapi polaczenie z internretem w celu pobrania aktualnej pogody,jesli chcesz kontynuowac wcisnij DONE");
pobieracz pob=new pobieracz(sciezka);
//ekran.setCurrent(al)
this.append("test2");
ekran.setCurrent(al,pob);
}
}
}
klasa Zapisane
catch(Exception e){
e.printStackTrace();
}
szukaj=new Command("szukaj",Command.OK,0);
this.addCommand(szukaj);
this.append("Podaj miasto do wyszukania");
this.append("\n");
pole=new TextField("Szukaj","",20,TextField.ANY);
this.append(pole);
this.setCommandListener(this);
}
public void commandAction(Command c,Displayable displayable)
{
int od,pocz,kon;
if(c==szukaj){
szukane=pole.getString();
// this.append(szukane);
od= miasta.indexOf(szukane);
if(od==-1)this.append("nie znaleziono");
pocz=miasta.indexOf("<",od)+2;
kon=miasta.indexOf(">",pocz)-1;
sciezka=miasta.substring(pocz,kon);
this.append(sciezka);
Alert al=new Alert("alert");
//al.addCommand(powrot);
// al.setString("Nastapi polaczenie z internretem w celu pobrania aktualnej pogody,jesli chcesz kontynuowac wcisnij DONE");
pobieracz pob=new pobieracz(sciezka);
//ekran.setCurrent(al)
this.append("test2");
ekran.setCurrent(al,pob);
}
}
}