2012-04-18 8 views
0

PHPプログラムを使用して、自分のJavaプログラムからデータベースにアクセスしています。スクリプトが正常に実行され、電子メールが送信された場合、PHPスクリプトが送信し、送信された電子メールとプリントが送信されます。 Javaプログラムは、PHPスクリプトから出力されるものを得るために、PHPスクリプトからJavaプログラムに正しく返されない文字列

InputStream in = null; 
      try { 
       httpPost.setEntity(new UrlEncodedFormEntity(nvps)); 
       HttpResponse response = httpclient.execute(httpPost); 
       in = response.getEntity().getContent(); 
       String inn = in.toString(); 
      } catch (IOException e) { 

      } 

      String result = null; 
      String sent = "sent"; 
      try{ 
       BufferedReader reader = new BufferedReader(new InputStreamReader(in,"iso-8859-1"), 8); 
       StringBuilder sb = new StringBuilder(); 
       String line = null; 
       while ((line = reader.readLine()) != null) 
        sb.append(line); 
       in.close(); 
       result = sb.toString(); 

を使用しています。ログを使用するPHPスクリプトが正常に実行されると、 "sent"が返され、変数 'result'の値が "sent"になります。 は、今私は、次の操作を実行しようとしているjavaファイルに:

Log.e("result",result); <-- returns sent 

      if(result.equals("sent")) 
      {     
       ... do something 
      } 

私はいくつかの異なる方法を試してみましたが、私はそれは常に失敗した「送ら」に「結果」を比較してみてくださいな方法に関係なくしています。 なぜこれが起こっているのか分かっている人は、アドバイスをいただければ幸いです。私はそれが愚かだと確信していますが、私はそれがPHPであると私はそれがそうだと思うものを正確に返さないとしなければならないと仮定します。

+0

あなたは、結果の値は '' "送ら" されていることを確認していますか? –

+0

'result'属性の実際の値を出力したことがありますか、それとも単に推測していますか? –

+0

すぐに役立つように、[SSCCE](http://sscce.org/)を投稿してください。 –

答えて

1

多分試してみてください。

result.toString().equalsIgnoreCase("sent") 

あなたも行うことができます:

Log.e("result",result); 

System.out.println("!" + result.toString() + "!"); 

if(result.equals("sent")) 
{     
    System.out.println("Success"); 
} 
+0

System.out.println( "!" + result.toString()+ "!"); // BAM –

+0

@AndrewThompson Edited;) –

+0

ノイズが削除されました。 –

関連する問題