Atitit 乱码的检测与纠正总结

目录

1. Atitit.request 乱码的检测与解决 attilax总结 1

1.1. 乱码的检测,,可以检测,列徐俩个问好?? 1

1.2. 使用常用汉字检测。如果发现常用汉字 2

1.3. 英文大小写字母,数字以及附加一个小数点 3

1.4. 检测阈值60% 3

2. 乱码的纠正 3

2.1. 常用乱码探测 3

2.2. 决策树 3

2.3. 使用策略模式逐一探测常用编码 3

2.4. Req map乱码的纠正 4

3. 调用 指定纠正乱码的列 为了稳定性 4

4. 性能与稳定性 5

4.1. Cache guava 5

4.2. 调用foreach try catch 5

5. 保障正确性 与稳定性 5

5.1. 指定纠正列白名单机制 5

5.2. 字库文件编码侦测 5

5.3. 字库长度探测与提示 5

5.4. Str2list  set的时候空字符检测与重整 5

5.5. 检测阈值开放 5

6. Ref 5

1. Atitit.request 乱码的检测与解决 attilax总结

乱码

1.1. 乱码的检测,,可以检测,列徐俩个问好??

if(value.contains("??"))

value=v_oriagal

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=UTF-8");

1.2. 使用常用汉字检测。如果发现常用汉字

使用常用汉字2500与英文大小写字母,数字以及附加一个小数点。检测阈值60
%

private static boolean isCoreectDecode(String s) {

// Strutil.toSet(compressableMimeType, string)

String f = "";

try {

f = FileUtils.readFileToString(new File(pathx.classPath() + File.separator + "com/attilax/web/2500.txt"),

"utf8");

catch (IOException e) {

throw new RuntimeException(e);

}

f = f + "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ.";

charset = strService.toSetNoSplitor(f);

List<String> li_sa =strService. toListNoSplitor(s);

int correctCnt = 0;

for (String ch : li_sa) {

if (charset.contains(ch))

correctCnt++;

}

if ((float) correctCnt / (float) s.length() > 0.6)

return true;

else

return false;

}

1.3. 英文大小写字母,数字以及附加一个小数点

1.4. 检测阈值60%

2. 乱码的纠正

2.1. 常用乱码探测

2.2. 决策树

2.3. 使用策略模式逐一探测常用编码

public static String getCorrectDecodeTxt(String s) {

if (isCoreectDecode(s))

return s;

else

{

String  iso2gbk= encodeService.iso2gbk(s);

if(isCoreectDecode(iso2gbk))

return iso2gbk;

String  iso2utf= encodeService.iso2utf(s);

if(isCoreectDecode(iso2utf))

return iso2utf;

String  gbk2utf8= encodeService.gbk2utf8(s);

if(isCoreectDecode(gbk2utf8))

return gbk2utf8;

String  utf2gbk= encodeService.utf2gbk(s);

if(isCoreectDecode(utf2gbk))

return utf2gbk;

}

return s;

}

2.4. Req map乱码的纠正

public static void setCorrectDecodeText(Map<String, Object> paramMap, String keys) {

String[] sa=keys.split(",");

for (String k : sa) {

try {

String correctDecodeTxt = encodeService.getCorrectDecodeTxt(paramMap.get(k).toString());

paramMap.put(k, correctDecodeTxt);

catch (Exception e) {

e.printStackTrace();

}

}

}

3. 调用 指定纠正乱码的列 为了稳定性

防止过纠正

public ModelVo weizhonRec_save() throws Exception{

ModelVo modelVo = new ModelVo();

Map<String,Object> paramMap =reqService.putMapByReqParams("VCF08,VAA07,VCF09,VCF65,VCF66,VCF67,VCF68,VCF69,VCF70,VCF09A,VCF18,VAA05,BCE03A,VAA01,VCF11,BCE01A,room",request1);

encodeService.setCorrectDecodeText(paramMap,"BCE03A,VCF65,VCF66,VCF67,VCF68,VCF69,VCF70");

// String correctDecodeTxt = encodeService.getCorrectDecodeTxt(s);

//try{

vaf2Bo.weizhonRec_save(paramMap);

4. 性能与稳定性

4.1. Cache guava

4.2. 调用foreach try catch

5. 保障正确性 与稳定性

5.1.  指定纠正列白名单机制

5.2. 字库文件编码侦测

5.3. 字库长度探测与提示

5.4. Str2list  set的时候空字符检测与重整

5.5. 检测阈值开放

6. Ref

/honurse/src/com/attilax/web/encodeService.java

response设置编码的三种方式 - 微尘的世界 - ITeye技术网站.html

java检测乱码原编码 - CSDN博客.html  todo

7. Mindchart

· 1. 乱码检测

· 1.1. 乱码的检测,,可以检测,列徐俩个问好?? 1

· 1.2. 使用常用汉字检测。如果发现常用汉字 2

· 1.3. 英文大小写字母,数字以及附加一个小数点 3

· 1.4. 检测阈值60% 3

· 2. 乱码的纠正 3

· 2.1. 常用乱码探测 3

· 2.2. 决策树 3

· 2.3. 使用策略模式逐一探测常用编码 3

· 2.4. Req map乱码的纠正 4

· 3. 调用 指定纠正乱码的列 为了稳定性 4

· 4. 性能与稳定性 5

· 4.1. Cache guava 5

· 4.2. 调用foreach try catch 5

· 5. 保障正确性 与稳定性 5

· 5.1. 指定纠正列白名单机制 5

· 5.2. 字库文件编码侦测 5

· 5.3. 字库长度探测与提示 5

· 5.4. Str2list  set的时候空字符检测与重整 5

· 5.5. 检测阈值开放 5

Atitit 乱码的检测与纠正总结 目录 1. Atitit.request 乱码的检测与解决 attilax总结 1 1.1. 乱码的检测,,可以检测,列徐俩个问好?? 1 1.2. 使用常用汉字相关推荐

  1. 整理的3500个常用汉字的调用字典

    3500个常用汉字的调用字典 下载地址:https://download.csdn.net/download/hj960511/85034461 资源说明: 总数目: 目录截图 实际字典情况: 调用方 ...

  2. Atitit db analysis statistics tonjyi fsy数据库统计分析目录1. Atitit 数据库表与注释文档与统计(表,说明) 11.1. 获取表列表 数据库包含哪些

    Atitit db analysis statistics tonjyi fsy数据库统计分析 目录 1. Atitit 数据库表与注释文档与统计(表,说明)    1 1.1. 获取表列表 数据库包 ...

  3. [日语]基于日语常用汉字表的音读到汉字的映射表

    音读 汉字 ア 亜 アイ 哀挨愛曖 アク 悪握 アツ 圧 アン 安案暗行 イ 以衣位囲医依委威為畏胃尉異移萎偉椅彙意違維慰遺緯易唯 イキ 域 イク 育 イチ 一壱 イツ 一逸 イン 引印因咽姻員院淫陰 ...

  4. 常用汉字的UNICODE和对应的繁体字

    常用汉字的UNICODE和对应的繁体字 UNICODE是简体字对应的 后面的繁体字是我用GOOGLE自动翻译的 UNICODE 简体字 繁体字 21834    啊    啊 38463    阿   ...

  5. 分享:常用汉字的unicode 编码

    分享:常用汉字的unicode 编码 常用汉字的unicode 编码 http://my.oschina.net/Boston/blog/92273 posted on 2012-11-28 01:1 ...

  6. html英文模板显示中文,网上下的网站模板,用dreamweaver修改字体后,我如果用搜狗打进去汉字就显示乱码,但如果我打的是英文就能显示,不知道怎么解决,求各位大神帮忙。...

    网上下的网站模板,用dreamweaver修改字体后,我如果用搜狗打进去汉字就显示乱码,但如果我打的是英文就能显示,不知道怎么解决,有没有知道是什么情况,求各位大神帮忙. Photographica- ...

  7. paip 一千 常用汉字 高频汉字 覆盖率90

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! paip ...

  8. 开题报告、文献检索账号、文献综述、外文翻译、抄袭检测软件、论文目录,都在这了都在这了,有备无患,拿去吧!

    开题报告.文献综述.外文翻译.论文反抄袭软件.论文目录,就差论文正文了,其他都全了!! 开题报告主要包括以下几个方面: (一)论文名称 论文名称就是课题的名字 第一,名称要准确.规范.准确就是论文的名 ...

  9. 三国志X威力加强版 解决新武将姓名和列传乱码问题——大五码(BIG5)

    博主小的时候很喜欢读<三国演义>,也喜欢玩光荣的三国志系列.三国志10可以说是比较好玩的了,可以操纵一个角色在三国世界里打拼~ 但是有的时候博主也想自己去创作新武将,制作自己喜欢的角色,虽 ...

  10. Ubuntu9.10 server 安装配置 vsftpd2.2.0 ftp服务器 并且 解决 putty 登陆 sshd 显示中文乱码

    因为安装了web服务器在 Ubuntu9.10 server 上, 有一些网站要放在上面进行测试, 这样就要和windows xp 的文件进行交换了, 例如网站程序在 windows 下开发好了, 把 ...

最新文章

  1. cmd变量,参数,for循环,
  2. IIS 上传文件大小配置步骤(默认200K)
  3. Codeforces Round #624 (Div. 3) E. Construct the Binary Tree 思维 + 构造
  4. iOS -转载-开发之个人开发者账号转公司开发者账号
  5. Red Hat 6.5安装Oracle 10g故障汇总
  6. nacos 本地测试_本地调试和服务器调试都无法连通-问答-阿里云开发者社区-阿里云...
  7. LINQ TO OBJECT
  8. 项目: 基于Python socket模块实现的简单 ftp 项目:
  9. Trie树讲解(例题:ACWING 835,ACWING 143)
  10. python大数据培训班
  11. “ARP欺骗”木马病毒
  12. java根号n元素的合并排序算法_根号N段合并排序
  13. mpvue小程序《校友足迹》成长记(一)
  14. 去除面部黑色素小妙招_去除脸部黑色素7个小方法
  15. 【实习日报】2019年4月上半月 前端开发实习工作日报汇总
  16. 支付宝对账单CSV解析
  17. vue配置sass全局变量
  18. CF106C Buns动态规划解决多重背包
  19. 阿里旺旺登陆提示超时
  20. IDEA 离线安装插件

热门文章

  1. 计算机网络苏州大学题库,苏州大学计算机网络样卷B[计科大类].doc
  2. 异步更新php数据库,ajax异步刷新实现更新数据库_jquery
  3. win10运行在哪里_原来win10还有LTSC版:10G大小+不强制更新,运行比win7更快!
  4. python小课账号转卖_Python小课笔记--Python报错处理
  5. UIScrollView setContentOffset: animated:YES 偶尔卡顿解决方案
  6. 是时候该了解下Unity3D了
  7. 从零开始学习Sencha Touch MVC应用之十三
  8. [文档].Altera - Nios II Flash Programmer用户指南
  9. Java-多线程第二篇多线程相关认识(2)
  10. Java_学生信息管理系统——数组版——尝试将main函数单独放了一个类,并加了文件...