Android通过http方式获取JSON字符串并解析的注意事项(乱码,小黑框)
2023-09-14 09:13:03 时间
在windows平台下换行符是 /r/n ,而在linux,android平台下换行符是 /n ,所以取得的JSON字符串必须进行过滤,将/r/n替换成/n,
另外不建议使用 BasicResponseHandler() ,这样会导致乱码
两个重要函数:
public static String get(String urlString) {
/*try{
HttpGet request = new HttpGet(urlString);
String result=getHttpClient().execute(request,new BasicResponseHandler());
return result;
}catch(IOException e){
throw e;
}*/
String result="";
BufferedReader in=null;
try {
HttpClient client = new DefaultHttpClient();
HttpGet request=new HttpGet(urlString);
HttpResponse response = client.execute(request);
in=new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb=new StringBuffer("");
String line="";
String NL=System.getProperty("line.separator");
// String NL="";
while((line=in.readLine())!=null){
sb.append(line+NL);
}
in.close();
result=sb.toString();
result=JsonFilter(result);
}
catch (Exception e) {
e.printStackTrace();
}
finally{
if(in!=null){
try{
in.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
return result;
}
/*
* 对json字符串进行过滤,防止乱码和黑框
*/
public static String JsonFilter(String jsonstr){
return jsonstr.substring(jsonstr.indexOf("{")).replace("\r\n","\n");
}
相关文章
- Google公布2012年度最佳Android应用排行榜
- Android开发大牛博客
- [Android Traffic] 看无线电波如何影响网络操作]
- [Android Pro] android 混淆文件project.properties和proguard-project.txt
- Android API之android.os.AsyncTask
- Android开发学习---使用Intelij idea 13.1 进行android 开发
- EasyPlayer Android基于ffmpeg实现播放(RTSP/RTMP/HTTP/HLS)同步录像功能
- Android开发学习---使用Intelij idea 13.1 进行android 开发
- 1、Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtoco
- android--listview设置高度
- Android APK文件解析
- Android studio中 android-support-v4报错问题
- 使用 http-proxy 代理 SAP UI5 应用发起的 HTTP 请求
- android java 堆栈_Android下打印调试堆栈方法
- Android创建窗口的过程
- Android 高版本联网失败报错:Cleartext HTTP traffic to xxx not permitted解决方法
- Android 11.0 12.0recovery竖屏界面旋转为横屏
- Android 10.0横屏旋转开机动画显示不全的解决方案
- Android JSON解析json数据
- 【Android 安全】DEX 加密 ( 代理 Application 开发 | multiple-dex-core 依赖库开发 | 配置元数据 | 获取 apk 文件并准备相关目录 )
- 【Android 应用开发】Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载
- 常用Android开源框架
- Android修改kernel logo和开机动画(android)
- Android相关属性的介绍:android:exported = true
- Android 开源项目android-open-project解析之(三) ScrollView,TimeView,TipView,FlipView
- Android实战技巧之十九:android studio导出jar包(Module)并获得手机信息
- HTTP隧道ABPTTS——加密型的http隧道,todo自己搭建一个玩玩
- Android的java的报错提示:Could not find com.android.tools.build:gradle:4.2.2.