android扫一扫 二维码显示结果中文乱码
最近再做一个android扫码器,虽然在网上找到了google Zxing扫码器,但是中文乱码,下面的方法完美的解决了我的问题
原址:[http://blog.csdn.net/yu413854285/article/details/7061462]
第一:先在CaptureActivity类中设置它的默认编码
decodeFormats = null;
characterSet = "ISO-8859-1";
第二:你在取回结果的Activity中转换相应的编码.这里我是在ResultActivity类里作处理的
public class ResultActivity extends Activity implements OnClickListener{private TextView dec_result;private String resultStr;private ImageView codeImage;private Button returnChoujiang,returnJubao;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.dec_result);init();dec_result=(TextView)findViewById(R.id.dec_result);codeImage=(ImageView)findViewById(R.id.code_image);Intent intent=getIntent();resultStr=intent.getStringExtra("result");String UTF_Str="";String GB_Str="";boolean is_cN=false;try {System.out.println("------------"+resultStr);UTF_Str=new String(resultStr.getBytes("ISO-8859-1"),"UTF-8");System.out.println("这是转了UTF-8的"+UTF_Str);is_cN=IsChineseOrNot.isChineseCharacter(UTF_Str);//防止有人特意使用乱码来生成二维码来判断的情况boolean b=IsChineseOrNot.isSpecialCharacter(resultStr);if(b){is_cN=true;}System.out.println("是为:"+is_cN);if(!is_cN){GB_Str=new String(resultStr.getBytes("ISO-8859-1"),"GB2312");System.out.println("这是转了GB2312的"+GB_Str);}} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();}Bitmap bm=intent.getParcelableExtra("IMG_return");if(is_cN){dec_result.setText(UTF_Str);}else{dec_result.setText(GB_Str);}codeImage.setImageBitmap(bm);returnChoujiang.setOnClickListener(this);returnJubao.setOnClickListener(this);}
第三:以下就是判断是否在Unicode编码里
public class IsChineseOrNot {public static final boolean isChineseCharacter(String chineseStr) { char[] charArray = chineseStr.toCharArray(); for (int i = 0; i < charArray.length; i++) { //是否是Unicode编码,除了"�"这个字符.这个字符要另外处理if ((charArray[i] >= '\u0000' && charArray[i] < '\uFFFD')||((charArray[i] > '\uFFFD' && charArray[i] < '\uFFFF'))) { continue;}else{return false;}} return true; } public static final boolean isSpecialCharacter(String str){//是"�"这个特殊字符的乱码情况if(str.contains("�")){return true;}return false;}
}
android扫一扫 二维码显示结果中文乱码相关推荐
- android利用zbar二维码扫描-(解决中文乱码及扫描区域定义)
写在最前(这是对上一篇博文的问题做的更新[android利用zbar二维码扫描]) project下载 zbarLib编译project project下载0积分 bug 在2.3的系统中Hol ...
- [转载]android利用zbar二维码扫描-(解决中文乱码及扫描区域定义)
写在最前(这是对上一篇博文的问题做的更新[android利用zbar二维码扫描]) 前天早上登陆CSDN时候一条消息:一网友提出了两点疑惑 扫描框目前只是做的假象,是全屏的图片进行解析 中文乱码现象 ...
- qrcode生成二维码图片命名中文乱码解决
转换字符编码为GBK function charsetToGBK($mixed) {if (is_array($mixed)) {foreach ($mixed as $k => $v) {if ...
- 微信扫码登录自定义二维码显示信息
微信扫码登录,自定义二维码显示信息 <script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js& ...
- Android扫一扫和生成二维码(使用华为ScanKit)
本文主要讲如何使用华为统一扫码scan Kit进行扫一扫以及生成二维码, 有兴趣的可以看一下华为扫描和Zxing扫描的区别 使用步骤 1.在全局的build.gradle文件里添加华为maven仓库 ...
- android TV端如何读取微信网页版二维码显示生成一张图片
今天讲下TV端接二维码遇到的一些问题,由于是在微信平台申请的是以网站那种形式申请的,而不是服务号申请的,所以客户端显示的二维码是以网页的形式展现的,网页是用WebView加载实现的,但是我们的界面是这 ...
- 钉钉开发平台 —H5微应用-- 扫条形码、二维码 api 示例
扫条形码.二维码 使用说明 客户端 Android iOS PC 支持说明 支持 支持 不支持 dd.biz.util.scan({type: String , // type 为 all.qrCod ...
- 微信扫一扫 扫普通链接二维码打开微信小程序
撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 扫普通链接二维码打开小程序 为了方便小程序开发者更便捷地推广小程序,兼容线下已有的二维码,微信公众平台开放扫描普 ...
- 扫普通链接二维码打开小程序
一,想要扫描普通链接二维码打开小程序,必须在小程序后台进行配置,否则无法完成 写在前面:微信对扫描普通链接二维码打开小程序有一定限制,对企业.媒体.政府.其他组织类型小程序开放此功能,个人类型小程序暂 ...
- 『小程序开发』关于微信小程序扫普通链接二维码打开小程序的具体配置流程...
前言: 对于扫普通链接二维码打开小程序的功能详解,官方api已经可以说是接近手把手的教学,咱们这里不做累述,直接上图走起...官方接入指南 功能介绍 扫二维码登录小程序...^_^ 限制 1.对于普通 ...
最新文章
- DotNet关键知识点——WCF篇(六)
- greensock包使用
- 学术圈「超级内卷」:“青椒”难!
- python多线程下载_python3 多线程下载
- dao-service-servlet-jsp构建简易web通讯录(三层开发)知识点1
- android数据绑定_Android数据绑定
- SqlCommandBuilder自动创建dataAdapter数据库操作命令
- 【转】推荐一款Java反编译器,比较好用
- 一步一步教你如何搭建自己的视频聚合站
- RS-232C接口定义(DB9)
- vba实现简单的数据排序和颜色统计
- 时序数据库详解和使用
- linux中的cd命令是什么意思,linux中cd命令的详细解释
- 计算机加密怎么设置方法,如何设置电脑密码?手把手教你如何设置电脑Windows密码...
- SWF文件格式说明书--SWF文件头
- PHP扫二维码直接跳地址
- python高级数据分析_8、Python 数据分析-Pandas高级操作
- Java多线程编程:Callable、Future和FutureTask浅析(多线程编程之四)
- 拉格朗日插值法python实现
- Geek 强力卸载工具,注册表,缓存,垃圾数据全清,免安装
热门文章
- 计算机打印机端口配置,如何设置打印机端口,小编教你设置电脑打印机端口
- 国外android大神博客,Android手机浏览器(国外篇)横向对比评测
- python中add方法_python中add函数怎么用
- linux7.5有哪些版本,CentOS Linux 7.5正式发布,基于Red Hat Enterprise Linux 7.5
- python中的value是什么意思_python中p-value的实现方式
- win10一些快捷键及更新
- 华住集团股权曝光:季琦持股30.5% 雅高不再是股东
- chromium之WebUI
- 历史上最有名的五句农民起义军口号
- 神经网络学习——第一个代码学习