有现成的库么?
请各位兄弟指教。
11 个解决方案
#1
我有一些数据存在数据库中,其中有些是utf-8的,有些不是,我主要目的是想查出那些不是utf-8的非法数据。希望各位兄弟指条道。
#2
http://www.douzi.org/blog/180.html
http://www.utf8.org/
http://www.utf8.org/
#3
还有么?
#4
这个问题太难了么?
我想知道是否有现成的判断UTF-8的函数?
我想知道是否有现成的判断UTF-8的函数?
#5
关注
#6
恩,这个贴到现在还没有人回的???
#7
http://www.linuxforum.net/books/UTF-8-Unicode.html
不知道,不过我想应该从UTF-8的特征去判断吧,检查到特定的细节,符合UTF-8特征,则就是了。
不知道,不过我想应该从UTF-8的特征去判断吧,检查到特定的细节,符合UTF-8特征,则就是了。
#8
在网络上找到一点,希望对你有帮助:
BOM(byte order mark)检测
无BOM检测
BOM是用来标记UTF-8编码的开始,它为三个字节:0xEF, 0xBB, 0xBF,
必需在串的开始。因此函数中的循环最多检测前三个字符,如果是的话,
则退出循环,判断完毕。
但很多UTF-8编码的文件没有BOM字节,因此循环后面的方法就是利用了
UTF-8编码的规律来进行判断,具体的原理就不多说了,看一看我上面链
接的文章应该就清楚了,但你要知道UTF-8编码的规则才可以。
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=python&Number=495520&page=12&view=collapsed&sb=5&o=&fpart=1
BOM(byte order mark)检测
无BOM检测
BOM是用来标记UTF-8编码的开始,它为三个字节:0xEF, 0xBB, 0xBF,
必需在串的开始。因此函数中的循环最多检测前三个字符,如果是的话,
则退出循环,判断完毕。
但很多UTF-8编码的文件没有BOM字节,因此循环后面的方法就是利用了
UTF-8编码的规律来进行判断,具体的原理就不多说了,看一看我上面链
接的文章应该就清楚了,但你要知道UTF-8编码的规则才可以。
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=python&Number=495520&page=12&view=collapsed&sb=5&o=&fpart=1
#9
谢了。
#10
不客气。
#11
我自己写过utf8和ucs2互相转换的函数。不是太麻烦。
如果只是判断的话,更简单了。
如果只是判断的话,更简单了。
#1
我有一些数据存在数据库中,其中有些是utf-8的,有些不是,我主要目的是想查出那些不是utf-8的非法数据。希望各位兄弟指条道。
#2
http://www.douzi.org/blog/180.html
http://www.utf8.org/
http://www.utf8.org/
#3
还有么?
#4
这个问题太难了么?
我想知道是否有现成的判断UTF-8的函数?
我想知道是否有现成的判断UTF-8的函数?
#5
关注
#6
恩,这个贴到现在还没有人回的???
#7
http://www.linuxforum.net/books/UTF-8-Unicode.html
不知道,不过我想应该从UTF-8的特征去判断吧,检查到特定的细节,符合UTF-8特征,则就是了。
不知道,不过我想应该从UTF-8的特征去判断吧,检查到特定的细节,符合UTF-8特征,则就是了。
#8
在网络上找到一点,希望对你有帮助:
BOM(byte order mark)检测
无BOM检测
BOM是用来标记UTF-8编码的开始,它为三个字节:0xEF, 0xBB, 0xBF,
必需在串的开始。因此函数中的循环最多检测前三个字符,如果是的话,
则退出循环,判断完毕。
但很多UTF-8编码的文件没有BOM字节,因此循环后面的方法就是利用了
UTF-8编码的规律来进行判断,具体的原理就不多说了,看一看我上面链
接的文章应该就清楚了,但你要知道UTF-8编码的规则才可以。
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=python&Number=495520&page=12&view=collapsed&sb=5&o=&fpart=1
BOM(byte order mark)检测
无BOM检测
BOM是用来标记UTF-8编码的开始,它为三个字节:0xEF, 0xBB, 0xBF,
必需在串的开始。因此函数中的循环最多检测前三个字符,如果是的话,
则退出循环,判断完毕。
但很多UTF-8编码的文件没有BOM字节,因此循环后面的方法就是利用了
UTF-8编码的规律来进行判断,具体的原理就不多说了,看一看我上面链
接的文章应该就清楚了,但你要知道UTF-8编码的规则才可以。
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=python&Number=495520&page=12&view=collapsed&sb=5&o=&fpart=1
#9
谢了。
#10
不客气。
#11
我自己写过utf8和ucs2互相转换的函数。不是太麻烦。
如果只是判断的话,更简单了。
如果只是判断的话,更简单了。