私は開発中のAndroidではありません。私はサーバーからJSONオブジェクトをダウンロードしたかったのですが、これだけのコードしか見つかりませんでした:Android - HTTP応答の文字で表したサイズ
private String downloadUrl(String myurl) throws IOException {
InputStream is = null;
// Only display the first 500 characters of the retrieved
// web page content.
int len = 500;
try {
URL url = new URL(myurl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(10000 /* milliseconds */);
conn.setConnectTimeout(15000 /* milliseconds */);
conn.setRequestMethod("GET");
conn.setDoInput(true);
// Starts the query
conn.connect();
int response = conn.getResponseCode();
Log.d("ServerConnection", "The response is: " + response);
is = conn.getInputStream();;
//is.
// Convert the InputStream into a string
String contentAsString = readIt(is, len);
return contentAsString;
// Makes sure that the InputStream is closed after the app is
// finished using it.
} catch (MalformedURLException e) {
//
return "error";
} catch (IOException e) {
//
return "error";
} finally {
if (is != null) {
is.close();
}
}
}
これはうまく動作しますが、わかりません。しかしそれにはint len = 500
があり、返されたjsonは500文字に切り詰められています。私は大きな数に変えようとしましたが、最後にスペースがあります。 InputSteamに含まれる文字列のサイズをどのように知ることができますか? YoutのはStringにInputStreamを変換するか、直接入力ストリームからオブジェクトを読み取るためにGsonを使用するApache Commons IO IOUtils.toStringを使用することができます
ありがとうございます!完璧に動作します! –
ようこそ。 –