|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2012/3/14 9:11:59 |
标题: |
文本文件的智能识别(含GB/Big5的区分) |
浏览:1965 |
|
加入我的收藏 |
楼主: |
这两天研究文本文件的识别问题,意外地解决了Ansi/UTF8文件的区分,更意外的是,竟然让我找到了区分GB和Big5编码文件的方法!经测试,识别率可以达到95%以上。 我已经将实现原理及代码放到盒子上来了,不过还没通过审核。现在你可以访问我的博客 http://dreamisx.blog.163.com/ ,你可以获得完整源代码。 当前的实现方法对10个汉字以内的文本识别率不太高,不过对更长些的文本,识别率还是很高的。 欢迎拍砖。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了…… |
作者: |
|
2012/3/14 10:03:56 |
1楼: |
访问不鸟你的博客哦~....
此帖子包含附件:
大小:43.4K |
----------------------------------------------
乜你咁蠢嘎!睇下佢点,嘿嘿..Blog:http://zdgzs.com
|
作者: |
|
2012/3/14 10:16:49 |
2楼: |
去掉后面的空格就可以访问了 http://dreamisx.blog.163.com/ 你可以获得完整源代码。
----------------------------------------------
▄︻┻┳═
|
作者: |
|
2012/3/14 10:17:06 |
2楼: |
晕死,是那个链接解析的有问题,后面多了个字符(我原本只是加了个空格),你可以点下面的那个“偶的技术军事博客”:http://dreamisx.blog.163.com/
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/14 12:16:01 |
3楼: |
刚看到一个关于中文编码识别的专利,我的这个方法是不是也可以申请专利啊?哈哈
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/14 12:49:06 |
3楼: |
你识别一下'联通'两个字的编码
----------------------------------------------
武稀松http://www.raysoftware.cn
|
作者: |
|
2012/3/14 13:08:49 |
4楼: |
“联通”两个字刚好撞上了utf8的DOM
----------------------------------------------
So be it.
|
作者: |
|
2012/3/14 13:09:18 |
4楼: |
刚刚改进了一下,之前识别短文本不太智能,请从我的博客下载最新代码。 各们大大发现什么问题,及时告诉我,我会不断去改进完善。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/14 13:45:13 |
5楼: |
这种方法的缺点: 1.对短文本识别效果不太好; 2.如果文本开头的4K区域没有中文字符,那就识别不出来,只能当作ANSI; 3.对某些字符识别不好,如制表字符;
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/14 13:49:44 |
6楼: |
好久不见,还在上海? 破自行车是不是已经换成四个轱辘了?
----------------------------------------------
大象说他Delphi比我好,我想了三天没明白是怎么回事!
|
作者: |
|
2012/3/14 13:53:56 |
7楼: |
还在上海混呢,没车,天天乘公交,失败啊。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/14 14:08:45 |
8楼: |
不好意思,又发现个BUG:处理钝E文时可能会有除0错,需要将下句 ratio := (maybeGB - mayBig5) * 100 div Max(maybeGB, mayBig5); 改为 ratio := (maybeGB - mayBig5) * 100 div Max(1, Max(maybeGB, mayBig5)); 我的博客已经更新过了,晕......
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/15 15:22:39 |
9楼: |
还有一个局限:只能在中文系统下使用^o^
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2012/3/19 21:40:46 |
10楼: |
终于加上了二进制文件的判别,现在可以像UltraEdit那样判别是文本还是二进制文件了。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2019/3/8 23:29:47 |
11楼: |
iamdream 您好。你的方法识别出来出现把GBK识别成GB5。 请问有最新的代码,供我学习一下吗?
----------------------------------------------
-
|
作者: |
|
2019/3/9 9:12:35 |
12楼: |
@898898:这个代码不能保证完全正确,尤其是短文本。当然,你也可以用其他方法,比如统计的方法。 附件是unicode版本。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2019/3/9 9:13:01 |
13楼: |
这个是Ansi版本,支持D5-D2007.
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2019/3/9 9:13:26 |
14楼: |
我的博客都不能访问了。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2019/3/9 9:16:13 |
15楼: |
有开源的基于统计的方法,比如你搜索“UniversalCharDet”。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2019/3/11 14:51:02 |
16楼: |
谢谢!iamdream 前辈。用的是XE10.3 ,所以我修改了一下,能用,谢谢!
----------------------------------------------
-
|
作者: |
|
2019/3/11 14:57:57 |
17楼: |
基本上编码都能识别。只是不常用的UTF7 和 UTF-32 还不知道如何识别。 XE10.3中读写UTF7 是没问题的就不不知道识别。
----------------------------------------------
-
|
作者: |
|
2019/3/11 17:17:53 |
18楼: |
Ansi 种类繁杂多。每个国家一套 或者像中国一样 几套。。
----------------------------------------------
[alias] co = clone --recurse-submodules up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速https://www.cctry.com/>http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
|
|