Android: индекс строки вне пределов - PullRequest
0 голосов
/ 02 января 2012

Я создаю приложение, в котором я застрял в этом исключении - строковый индекс выходит за границы, и я получаю сообщение об ошибке в следующей строке.

String netwrkk = mTelephonyMgr.getNetworkOperator();
 System.out.println("hello");
 if (netwrkk != null) {
     System.out.println("hello2");
      //  int mcc = Integer.parseInt(netwrkk.substring(0, 3)); // exception at this line

     System.out.println("hello3");
        int mnc = Integer.parseInt(netwrkk.substring(3));// exception at this line
        System.out.println("hello4");
     mccc1=(TextView)findViewById(R.id.mccc1);
     System.out.println("netwrk:"+netwrkk);
     mccc1.setText(Integer.toString(mcc));
     mncc1=(TextView)findViewById(R.id.mncc1);
     System.out.println("netwrk:"+netwrkk);
     mncc1.setText(Integer.toString(mnc));
     System.out.println("mccc: "+mcc);
     try{
     System.out.println("bearing : "+locn.getBearing());
     }catch (Exception e) {
        System.out.println(e);
    }System.out.println("mnc"+mnc);
                        }

1 Ответ

2 голосов
/ 02 января 2012

Вы должны проверить, имеет ли netwrkk длину 4 или более. Если нет, substring(0, 3) не удастся.

Также ознакомьтесь с классом Log в Android. Вы не должны использовать System.out.println()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...