0

PHP スクリプトを使用して、Java プログラムを介してデータベースにアクセスしています。スクリプトが正常に実行され、電子メールが送信された場合、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スクリプトから印刷されたものを取得するため。ログを使用すると、PHP スクリプトが正常に実行されると、「sent」が返され、変数「result」の値が「sent」になることがわかります。今、Javaファイルで私は次のことをしようとしています:

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

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

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

4

1 に答える 1

1

多分試してください:

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

次のこともできます。

Log.e("result",result);

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

if(result.equals("sent"))
{                   
     System.out.println( "Success" );
}
于 2012-04-18T17:36:18.137 に答える