您的位置:首页 > 编程语言 > PHP开发

atitit.Atitit.检测文本文件的编码 java  与php版  。Net

2016-01-12 00:21 597 查看
atitit.Atitit.检测文本文件的编码 java  与php版  。Net

 

 

1 检测编码原理

Utf8》》gbk

在此转会gbk》》utf

 

 

 

 

2 工具检测编码

不能使用load来检测编码..

 

 

要是txt是 gbk的, 使用notepad++ load as utf8 三正常的...

Load as gbk 却乱码了...

 

 

Editplus就ok...

 

 

不过.要是文件是utf8的.. Editplus  load as gbk 显示是正常的..所以,不能使用load来检测编码..

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax akbar al rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

使用convert来检测编码

使用convert来检测编码..docu>>file encode >>convet encode  显示编码确认框..这个走十恰当的的编码...

 

也可以使用notepad的另存为来检测..

 

3 编程api方式检测编码

public class EncodeCheckor {
 
public static void main(String[] args) {
// TODO Auto-generated method stub
String f = pathx.classPath() + "/aaaNaming/names.txt";
System.out.println(getEncode(f));
}
 
private static String getEncode(String f) {
// TODO Auto-generated method stub
String t = filex.read(f);
String $zh = t;
;
String $s1 = iconv("UTF-8", "gb2312", $zh);
String $s2 = iconv("gb2312", "UTF-8", $s1);
if ($s2 .equals( $zh)) {
return "utf-8";
} // if utf code , convert2 gbk mode
return "gbk";
}
 
private static String iconv(String encode1, String encode2, String str) {
byte[] temp = null;
try {
temp = str.getBytes(encode1);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}// 这里写原编码方式
String newStr = null;
try {
newStr = new String(temp, encode2);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}// 这里写转换后的编码方式
 
return newStr;
}
 
}
 

 

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: