Witam posiadam taki oto kod:

import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;
import javax.microedition.io.*;
import java.io.*;

public class slownik extends MIDlet implements CommandListener{

TextField tekst;
InputStreamReader in;
StringItem stringItem1;
Form form;
String h="";
TextField dooo;
public slownik()
{
 form=new Form("");
tekst=new TextField("Skad","",100,TextField.ANY);
dooo=new TextField("Dokad","",100,TextField.ANY);
stringItem1=new StringItem("","");
form.append(stringItem1);
Command p=new Command("ok",Command.OK,0);
Command p1=new Command("Koniec",Command.EXIT,1);

form.append(tekst);
form.append(dooo);
form.addCommand(p);
form.addCommand(p1);

form.setCommandListener(this);
Display.getDisplay(this).setCurrent(form);
}

public void commandAction(Command c, Displayable s)
{
if(c.getCommandType()==Command.OK)
{form.append(tekst.getString());
stringItem1.setText("\n");
        try{
         in = new InputStreamReader(this.getClass().getResourceAsStream("/rozklad.txt"), "utf-8");
		 
        }
        catch(UnsupportedEncodingException e)
        {}
        catch(IOException e){}
                StringBuffer sb = new StringBuffer();
      int chr = 0;   
      try{
      while ((chr = in.read()) != -1)
      {
          sb.append((char) chr);	
          if((char)chr=='\n')
          {
	
	
              if((sb.toString().toLowerCase().indexOf(tekst.getString().toLowerCase())!=-1)&&(sb.toString().toLowerCase().indexOf(dooo.getString().toLowerCase())!=-1))
                 { //stringItem1.setText(stringItem1.getText()+sb.toString());
            String co=sb.toString();
	
	 trasa(co);
	  //** do tąd
	
	  }
	      sb.delete(0, sb.length());
             
          }
      }

      }
      catch(IOException e){}
	
	  }
	  else
	  {
	  notifyDestroyed();
	  }
	  }
	  
	  //funkcja wypisujaca godziny
	  public void godzina(String co)
	  {
	     int i=0;
	     int y=0;
	  while(i<=co.length())
	   {
	   String u="";
	  u= co.substring(i,i+1);
         if(u.equals(":"))
	   {
		   y++;
	   }
	   if(y==4)
	   {
	
	   
	   h=co.substring(i+1,i+1+5);
	   
	 break;
	  
	  }
	  i++;}
	  
	  }
	  
	  
	  public void trasa(String co)
	  {
	  int i=0;
	  int y=0;
	  String coo="";
	  String mod="";
	  String mdo="";
	  h="";
	  String od=tekst.getString();
	  String doo=dooo.getString();
	  while(i<co.length())
	  {
	    String u="";
	    u= co.substring(i,i+1);
	   if(u.equals(";"))
	   {
	         y++;
		 }
		 if(y==1)
		 {
		 mod+=co.substring(i+1,i+2);
		 }
	   if(y==2)
	   {
	   mdo+=co.substring(i,i+1);
	   }
	    if(y==4)
	   {
	   
	
	   h=co.substring(i+1,i+6);
	   h+=",";
	 break;
	  
	  }
	 i++;
	   }
	 
	   mdo=mdo.substring(1);
	   mod=mod.substring(0,mod.length()-1);
	     	   
	   if((mod.equals(tekst.getString()))&&(mdo.equals(dooo.getString())))
	   {
	   form.append(h);
	   }
	   else
	   {
	   form.append("brak rozkładu");
	   }
	   
	
	  }
	  
	  public void startApp(){}
	  public void pauseApp(){}
	  public void destroyApp(boolean b){}
	  }
	  

I gdy wpiszę skad: Nowy Sącz dokąk Krakow to na emulatorze j2me toolkit wyszukuje mi dane połączenie natomiast po wgraniu na telefon już nie. Podejrzewam że problemem są polskie znaki.
in = new InputStreamReader(this.getClass().getResourceAsStream("/rozklad.txt"), "utf-8");
Proszę o pomoc