读取gbk编码的文件,并将其转为utf-8编码后输出:
import java.io.File;
import java.io.RandomAccessFile;
import java.io.UnsupportedEncodingException;
public class Test1 {
public static String readTxt(int off,int leng) {
RandomAccessFile r;
String str = "";
try {
r = new RandomAccessFile(new File("D:/test.txt"), "r");
byte[] c = new byte[leng];
r.seek(off);
r.read(c);
str = new String(c);
} catch (Exception e) {
e.printStackTrace();
}
return str;
}
public static byte[] gbk2utf8(String chenese){
char c[] = chenese.toCharArray();
byte [] fullByte =new byte[3*c.length];
for(int i=0; i<c.length; i++){
int m = (int)c[i];
String word = Integer.toBinaryString(m);
StringBuffer sb = new StringBuffer();
int len = 16 - word.length();
for(int j=0; j<len; j++){
sb.append("0");
}
sb.append(word);
sb.insert(0, "1110");
sb.insert(8, "10");
sb.insert(16, "10");
String s1 = sb.substring(0,8);
String s2 = sb.substring(8,16);
String s3 = sb.substring(16);
byte b0 = Integer.valueOf(s1, 2).byteValue();
byte b1 = Integer.valueOf(s2, 2).byteValue();
byte b2 = Integer.valueOf(s3, 2).byteValue();
byte[] bf = new byte[3];
bf[0] = b0;
fullByte[i*3] = bf[0];
bf[1] = b1;
fullByte[i*3+1] = bf[1];
bf[2] = b2;
fullByte[i*3+2] = bf[2];
}
return fullByte;
}
public static void main(String[] args) {
String str = readTxt(0,731);
byte [] fullByte = gbk2utf8(str);
String fullStr = "";
try {
fullStr = new String(fullByte, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
System.out.println(fullStr);
}
}
测试文档D:\test.txt内容:
[账号],[日期],[收支种类],[币种],[收入],[支出],[余额],[摘要]
3819660311,2004-2006-01-05,支出,人民币,0,54.20, 6403.89,消费款
中文可以,正确转换
英文乱码
分享到:
相关推荐
批量的将gbk文件装utf-8,简单通俗易懂,别问为什么 多看 多练习 勤能补拙 笨鸟先飞 蒂花之秀 就是将gbk文件转utf-8
|————create_direct_pay_by_user-CSHARP-UTF-8 |————create_direct_pay_by_user-JAVA-GBK |————create_direct_pay_by_user-JAVA-UTF-8 |————create_direct_pay_by_user-PHP-GBK |————...
本人上传的模板仅供参考... 模板目前已发布GBK、UTF-8 2种编码,完美支持Discuz! X3 X3.1 X3.2最新版本; …… 更多精彩欢迎进入演示站体验!NVBING5 四年(2012-2015)专注Discuz!模板开发与设计,万名站长的不二选择!
[变更] demo数据变更为可独立安装包 [变更] 添加广告页面的错误提示信息 [变更] 邮件模板编辑器改进为html编辑器 [修正] 修正短信功能gbk下发送不了中文内容的问题 [修正] 修正短信功能不能群发没有积分范围的特殊...
通过Java实现文件编码的转换功能,提供了Demo用于测试。 目前仅测试了GB2312 UTF-8之间的相互转换,ISO-8859-1不支持。其余的没有测试
本人在做下载模块的时候,遇到了点击通知栏不响应的问题,所以就顺手写...1. 本Demo使用Utf-8编码,出现乱码,请将编码修改为Utf-8,或将代码文件转为gbk; 2. 本Demo仅演示了四种方式跳转Activity,具体见JumpActivity.java.
delphi-http-restful客户端DLL及DEMO(delphi7测试通过) 支持GET,POST,PUT,DELETE 支持自动识别返回的编码转换 utf8 gbk 支持content-type: application/json application/x-www-form-urlencoded 格式数据提交
同时提供 UTF-8、GBK、BIG5编码 这套模板整合了页面静态缓存+压缩输出功能,但是下载模板后,即使不使用这套模板,经过设置的缓存策略同样会对ECShop当前应用的模板有效。 所以这个功能是可以独立使用的。 下载后...
这是我在研究中文分词时... 本系统支持的汉字编码包括 GBK、UTF-8 在线分词演示: G B K: http://www.hightman.cn/demo/scws/v4.php <br>UTF-8: http://www.hightman.cn/demo/scws/v48.php <br>详情可参看:...
这是我在研究中文分词时... 本系统支持的汉字编码包括 GBK、UTF-8 在线分词演示: G B K: http://www.hightman.cn/demo/scws/v4.php <br>UTF-8: http://www.hightman.cn/demo/scws/v48.php <br>详情可参看:...
的是 UTF-8 字符集,则不适合用本系统,请参见项目主页上的 scws-1.0.0 ,这套工具完美支持 GBK 和 UTF-8 字符集同时支持词性标注等。(注:BIG5 字符集可以按 GBK 字符集处理) 提供下载的词典是在 Intel 架构的...
的是 UTF-8 字符集,则不适合用本系统,请参见项目主页上的 scws-1.0.0 ,这套工具完美支持 GBK 和 UTF-8 字符集同时支持词性标注等。(注:BIG5 字符集可以按 GBK 字符集处理) 提供下载的词典是在 Intel 架构的...
分享给大家供大家参考,具体如下: 最近想要做一个插件机制,需要用到xml,在解析xml时候需要转换为数组,特意记录一个此种解析...xml version=1.0 encoding=UTF-8?> 测试插件 do=aritle/> <controller co=Ari>
在windows系统中,命令行中执行ant命令时,当指定的 构建脚本文件中包含中文字符,而构建脚本文件的编码是UTF-8时将会 Invalid byte 1 of 1-byte UTF-8 sequence. 的错误.这个问题尚未 知解决,故先采用GBK的编码. 2.在...
1.功能简介 ...说明:高级模式下,可以直接编辑根目录下的.htaccess文件,需要掌握Rewrite规则,和正则表达式的写法。 在Linux Apache的环境下测试成功,其他环境没有测试,如果有问题请及时反馈。
String filePath = "d:\\demo1.eml"; OutputStream os = new FileOutputStream(filePath); msg.writeTo(os); os.close(); } catch (MessagingException e) { e.printStackTrace(); } catch ...