2011-07-20 9 views
0

XMLリクエストからの応答を受け取りました。私はそれに対処する必要があります。応答は、要求が受け入れられてアカウントが確認されたときに「00」を返し、アカウントが無効であるときに「03」を返します。Android:Sax Reader、必要な情報を抽出できません

現在サックスReaderは、正しい情報を返しているが、私は携帯電話の内部ストレージにユーザ名/パスワードを保存することができますので、私は読者からの情報を抽出することはできません。

サックスリーダーからのコードは次のとおりです。

public void inputStreamToString(InputStream is) { 
     try { 
      SAXParserFactory factory = SAXParserFactory.newInstance(); 
      SAXParser saxParser = factory.newSAXParser(); 

      DefaultHandler handler = new DefaultHandler() { 

       boolean errorCode = false; 

       public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException 
       { 
        System.out.println("Start Element :" + qName); 

        if (qName.equalsIgnoreCase("ErrorCode")) 
        { 
         errorCode = true; 
        } 
       } 

       public void endElement(String uri, String localName,String qName) throws SAXException 
       { 
        System.out.println("End Element :" + qName); 
       } 

       public void characters(char ch[], int start, int length) throws SAXException 
       { 
        if (errorCode) 
        { 
         System.out.println("ErrorCode : "+ new String(ch, start, length)); 
         if (ch.equals(00)) 
         { 
          System.out.println("IT WORKS!!!"); 
         } 
         errorCode = false; 
        } 
       } 
      }; 
      saxParser.parse(is, handler); 
     } 
     catch (Exception e) 
     { 
      System.out.println("Sax Error"); 
      e.printStackTrace(); 
     }  
    } 

あなたはそれが応答から関連するエラーコードをプリントアウトされます。public void文字で見ることができるように。私は現在、Ifステートメントでch.equals(00)を実行しようとしていますが、正しい情報を選択していません! chがcharデータ型であることが問題になりますか?

ご協力いただければ幸いです。

+0

私はそれを働かせました。 '00'と '03'のエラーコードを使用する代わりに。私は、「OK」と「無効」という応答メッセージの長さを使用しました。しかし、関心から、誰もが元の問題を修正する方法をまだ知っていますか? – Sad

答えて

0

私はそれを働かせました。 '00'と '03'のエラーコードを使用する代わりに。私は、「OK」と「無効」という応答メッセージの長さを使用しました。

関連する問題