好久没写blog了。。。

最近搞android的应用开发,面向国内的项目,免不了要处理中文编码问题。

 

买时用各种缓冲流接收数据,然后再转换编码,用过BGK,GB2312 ,HK,UTF-8 都无效。。android什么鬼东西  。。开始怀疑它不支持中文编码  但是不可能 webkit上网的时候也可以显示中文的啊。。。

 

后来看了一位哥们的代码,有了一些启示,就是接受数据的时候不要用缓冲流,直接用字符流去接收数据然后放到一个byte数组,再转换编码。。搞定。。代码保密  哈哈。。。。公司做的东西  不能随便放上来。

 

那就举个例子吧,例如:

 

int i =-1;
     int count = 0;
     while((i = is.read())!=-1){
      Log.e("data", i+"");
      //baos.write(buf, 0, i);
      buf[count]= (byte) i;
      count++;
      if(count > 10){
       data =  new String(buf, "GB2312");
       Log.e("get message", "data:"+data);
       messageHandler.sendEmptyMessage(0);
      }
     }


我的源代码,这个是自己的,可以公开,哈哈

int c = -1;
                final int LENGTH = 1024;
                byte[] bytes = new byte[LENGTH];
                int count = 0;
               
                StringBuilder holder = new StringBuilder();
                while ((c = inputStream.read()) != -1) {
                    bytes[count++] = (byte)c;
                    if(count >= LENGTH) {
                        holder.append(new String(bytes, "GB2312"));
                        clearArray(bytes);//数组清零
                        count = 0;
                    }
                }

                data = holder.toString();

更多相关文章

  1. 箭头函数的基础使用
  2. android ndk编译x264开源(用于android的ffmpeg中进行软编码)
  3. android中文api(89)——ViewManager
  4. Android(安卓)中文API(86)——ResourceCursorAdapter
  5. Android中文API(144) —— JsonWriter
  6. android 中文api (62) —— ViewSwitcher.ViewFactory
  7. android api 中文 (74)—— AdapterView.AdapterContextMenuInfo
  8. Android(安卓)中文 API (27) —— SeekBar.OnSeekBarChangeListene
  9. [RK3399][Android7.1] 调试笔记 --- 设置搜狗为开机默认输入法

随机推荐

  1. Android(安卓)电池管理系统
  2. android原生和H5交互(转)
  3. Android教程之一:Window下搭建Android开发
  4. Android(安卓)之 复习大纲
  5. Android需要复合人才
  6. 《浅谈android进程》
  7. Android(安卓)生态详解
  8. android总结之android初识
  9. Android(安卓)Q正式版发布时间确定!详细介
  10. Android中RelativeLayout各个属性的含义