代码如下:
URL url = new URL(Costanti.IP_SERVER+"myApps.php"+"?userId="+this.userId);
try
{
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
int status = conn.getResponseCode();
if (status >= 200 && status <= 299)
{
Reader r = new InputStreamReader(conn.getInputStream());
Applicazioni dati = new Applicazioni();
try
{
dati = gsonReader.fromJson(r, Applicazioni.class);
return dati;
}
catch (Exception e)
{
System.out.println("Ho fallito a prendere i dati");
Log.e("JSON_Parser",e.toString());
}
}
}
catch (IOException e)
{
System.out.println("Ho fallito la connnection");
e.printStackTrace();
}
}
所以基本上我使用这个谷歌库来读取imputStreamReader中的json文件,并用我的数据填充Applicazioni对象。
我如何检查imputStreamReader的内容是字符串“false”还是布尔值false,如果它不同,则用json库解析它?
在最后的PHP中我做到了 echo json_encode($ applicazione); 在一个案例或 在另一种情况下回声“假” TNX
答案 0 :(得分:2)
InputStream in = new URL(url).openStream();
Scanner scanner = new Scanner(new InputStreamReader(in));
String result = scanner.useDelimiter("\\Z").next(); // this reads the whole
// script output in a string
if(result.equals("false"))
handle the false value...
else
dati = gsonReader.fromJson(result, Applicazioni.class);
答案 1 :(得分:1)
你可以从PHP中对json编码假结果也像[“result”=&gt;“false”],这样你就可以在Java程序中始终进行JSON解码,然后查找结果值。
您可以将结果值放在输出中。