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 脚本打印的内容。使用 Log 我知道当 PHP 脚本成功运行时,正在返回“sent”,并且变量“result”的值为“sent”。现在在 java 文件中,我正在尝试执行以下操作:

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

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

我尝试了几种不同的方法,但无论我尝试将“结果”与“发送”进行比较,它总是失败。如果有人知道为什么会发生这种情况,我将不胜感激任何建议。我确定它很愚蠢,但我认为它与 PHP 没有完全返回我认为的内容有关,即使 Log 显示它也是如此。

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 回答