刚写了个Http get请求,回调回来是json格式的字符串。问题是这样的,如果是短的json字符串,可以完整的显示,但是请求的json很大时,就只能显示2000多个字符串,请问是不是HttpURLConnection是不是有显示字节流数的。哪位高人可以指点下不?代码如下:/**
* send get request
*
* @param mUrlString
*/
public void sendRequestbyHttpURLConnection(String mUrlString) {
String result = "";
HttpURLConnection conn = null;
try {
URL url = new URL(mUrlString);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setDoInput(true);
// conn.setConnectTimeout(5000);
conn.setRequestProperty("User-Agent", UserAgent.USER_AGENT);
conn.setRequestProperty("accept", "*");
result = transformStreamToString(conn.getInputStream());
Message message = new Message();
message.what = EVENT_FINISHED;
message.obj = result;
mHandler.sendMessage(message); } catch (Exception ee) {
Message message = new Message();
message.what = EVENT_ERROR;
message.obj = ee.toString();
mHandler.sendMessage(message);
Log.e(TAG, "HttpTask.run exception " + ee.toString());
} finally {
if (conn != null) {
conn.disconnect();
}
}
}
private String transformStreamToString(InputStream inStream) {
BufferedReader br = new BufferedReader(new InputStreamReader(
inStream));
String line = "";
stringBuffer.setLength(0);
try {
while ((line = br.readLine()) != null) {
stringBuffer.append(line);
Logger.d("Response", line);
}
} catch (Exception e) {
Logger.d("Response", e.getMessage());
}
return stringBuffer.toString();
}
}
* send get request
*
* @param mUrlString
*/
public void sendRequestbyHttpURLConnection(String mUrlString) {
String result = "";
HttpURLConnection conn = null;
try {
URL url = new URL(mUrlString);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setDoInput(true);
// conn.setConnectTimeout(5000);
conn.setRequestProperty("User-Agent", UserAgent.USER_AGENT);
conn.setRequestProperty("accept", "*");
result = transformStreamToString(conn.getInputStream());
Message message = new Message();
message.what = EVENT_FINISHED;
message.obj = result;
mHandler.sendMessage(message); } catch (Exception ee) {
Message message = new Message();
message.what = EVENT_ERROR;
message.obj = ee.toString();
mHandler.sendMessage(message);
Log.e(TAG, "HttpTask.run exception " + ee.toString());
} finally {
if (conn != null) {
conn.disconnect();
}
}
}
private String transformStreamToString(InputStream inStream) {
BufferedReader br = new BufferedReader(new InputStreamReader(
inStream));
String line = "";
stringBuffer.setLength(0);
try {
while ((line = br.readLine()) != null) {
stringBuffer.append(line);
Logger.d("Response", line);
}
} catch (Exception e) {
Logger.d("Response", e.getMessage());
}
return stringBuffer.toString();
}
}
解决方案 »
- 做个安卓手机上的视频播放器?
- adnroid上如何访问url返回数据,特殊!!
- LinearLayout中的edittext,当点击edittext的时候不能弹出软键盘
- Android读取到了其他程序的私有文件,为什么呢?
- android编程中很多控件定义后不识别!!!
- 新手问下,按ctrl+1没法自动import怎么办
- Android 视图报: java.lang.NullPointerException Exception details are logged in ...
- 关于HttpURLConnection使用问题
- 关于android的tab子页面刷新父页面的tab样式问题
- Android 图片压缩的问题,求指教
- android sqlite 添加后查出来的数据不一样l
- 请大家帮忙看看这个滑动手势代码的问题
public void setFixedLengthStreamingMode (int contentLength)