手机下载TXT文件编程之战TXT方式为UTF-8,怎样传输到另一只能识别GBK编码的设备?

新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
富甲一方, 积分 40576, 距离下一级还需 9424 积分
论坛徽章:210
首先,shell能解决这个问题吗? 如果不能,我该找什么去做??
白手起家, 积分 59, 距离下一级还需 141 积分
论坛徽章:0
可以 参见enca enconv iconv convmv
白手起家, 积分 10, 距离下一级还需 190 积分
论坛徽章:0
iconv -f GBK -t UTF-8
论坛徽章:106
man iconv复制代码
巨富豪门, 积分 26747, 距离下一级还需 13253 积分
论坛徽章:1
$ iconv -f gbk -t utf8 filename
富甲一方, 积分 40576, 距离下一级还需 9424 积分
论坛徽章:210
谢谢你们的详细答案,再次谢谢。
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处linux-利用iconv批量转换GBK文件到UTF-8编码方法 - 不断的前进ING。。。 - 51Testing软件测试网 51Testing软件测试网-中国软件测试人的精神家园
linux-利用iconv批量转换GBK文件到UTF-8编码方法
& 10:41:55
/ 个人分类:
查看文件file -i filename递归(包括子文件夹)find default -type d -exec mkdir -p utf/{} \;find default -type f -exec iconv -f
{} -o utf/{} \;这两行命令将default目录下的文件由GBK编码转换为UTF-8编码,目录结构不变,转码后的文件保存在utf/default目录下。注意:如果原来就是utf-8编码,使用iconv -f GBK -t UTF-8命令转换后,会出现乱码,或截断等各种问题;一定要保证原文件是不是utf-8编码;使用如下命令把文件编码先查出来:find default -type f -exec file -i {} \; & /tmp/a查询是否存在已经是utf-8编码的文件:grep "charset=utf-8" /tmp/aiconv有如下选项可用:输入/输出格式规范:-f, --from-code=名称 原始文本编码-t, --to-code=名称 输出编码信息:-l, --list 列举所有已知的字符集输出控制:-c 从输出中忽略无效的字符-o, --output=FILE 输出文件-s, --silent 关闭警告--verbose 打印进度信息博客分类:
java中自动识别文件编码是UTF8 or GBK
什么是jchardet?
jchardet是mozilla自动字符集探测算法代码的java移植,其源代码可以从sourceforge下载。这个算法的最初作者是frank Tang,C++源代码在http://www.infomall.cn/cgi-bin/m ... ource/intl/chardet/,可以从http://www.infomall.cn/cgi-bin/m ... s/intl/chardet.html得到更多关于这个算法的信息。
编译及应用
  将下载后的chardet.zip解压缩后,到~/mozilla/intl/chardet/java/目录下,运行ant即可在dist/lib目录下生成chardet.jar,将这个jar包加入CLASSPATH.然后
运行:java org.mozilla.intl.chardet.HtmlCharsetDetector http://hedong.3322.org
结果:CHARSET = GB18030
运行:java org.mozilla.intl.chardet.HtmlCharsetDetector http://www.wesnapcity.com/
结果:CHARSET = ASCII
运行:java org.mozilla.intl.chardet.HtmlCharsetDetector http://www.wesnapcity.com/blog/
结果:CHARSET = UTF-8
  下面就jchardet.jar中的HtmlCharsetDetector.java,对调用jchardet过程予以说明:
//实现nsICharsetDetectionObserver接口,这个接口只有一个Notify()方法.当jchardet引擎自己认为已经识别出字符串的字符集后(不论识别的对错),都会调用这个Notify方法。
nsICharsetDetectionObserver cdo=new nsICharsetDetectionObserver() {
& public void Notify(String charset) {
&& HtmlCharsetDetector.found =
&& System.out.println("CHARSET = " + charset);
& }
};
/**
* 初始化nsDetector()
*lang为一个整数,用以提示语言线索,可以提供的语言线索有以下几个:
*
&& 1. Japanese
&& 2. Chinese
&& 3. Simplified Chinese
&& 4. Traditional Chinese
&& 5. Korean
&& 6. Dont know (默认)
*/
nsDetector det = new nsDetector(lang) ;
// 设置一个Oberver
det.Init(cdo);
BufferedInputStream imp = new BufferedInputStream(url.openStream());
byte[] buf = new byte[1024] ;
boolean done =& //是否已经确定某种字符集
boolean isAscii =//假定当前的串是ASCII编码
while( (len=imp.read(buf,0,buf.length)) != -1) {
& // 检查是不是全是ascii字符,当有一个字符不是ASC编码时,则所有的数据即不是ASCII编码了。
& if (isAscii) isAscii = det.isAscii(buf,len);
& // 如果不是ascii字符,则调用DoIt方法.
& if (!isAscii && !done) done = det.DoIt(buf,len, false);//如果不是ASCII,又还没确定编码集,则继续检测。
}
det.DataEnd();//最后要调用此方法,此时,Notify被调用。
if (isAscii) {
System.out.println("CHARSET = ASCII");
found =
}
if (!found) {//如果没找到,则找到最可能的那些字符集
String prob[] = det.getProbableCharsets() ;
for(int i=0; i&& System.out.println("Probable Charset = " + prob);
}
}
jchardet主要解决什么样的问题?
  Java字符串(及字符)类以Unicode编码保存数据。当处理来自外部的国际性文本时,我们需要提供关于这些文本的编码,以便准确地将它们转换为Unicode。这意味着你必须知道你的java代码要处理的所有文件的编码。许多基于Internet的Java应用程序,要处理来自随机数据源的数据,而很多数据的编码不能确切的知道。例如,一个HTML页面中的数据,如果没有元数据标签明确地指定页面的字符集,就很难确实其编码,将其转换为 Java Unicode字符串时也会误用而终止。
这个算法是如何工作的?
  浏览器处理这个问题的方法,是对数据一个字节一个字节的检查,以力图测试字符集(当你点击菜单View-&Auto-select或 auto-detect时)。这个算法(最初由Frank Tang开发)检查字节序列,基于每个字节的值,利用逐步消除法(elimination logic)逐步缩小以至最后确定字符集。如果这个方法仍难以确定,就利用另一个方法,根据某种语言的字符的频次统计来确实字符集。
转载地址:http://www.w18.net/viewthread.php?tid=125
浏览: 52649 次
来自: 浙江省浦江县
没错,left join,right join这样的联表查询效 ...
真是有那么神奇,那么准确,那就太好了!
谁有GroboUtils-2-core.jar 这个包?
给发 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'(TommyoTommy)
(蛋碎了一地)
(你吃饭了吗6)
第三方登录:

我要回帖

更多关于 TXT什么文件 的文章

 

随机推荐