在编程的世界中,文件转换是经常见的,本文介绍了如何把GBK编码的文件转换成UTF8编码的文件。
主要利用类,为java.io.InputStreamReader和java.io.OutputStreamWriter
方法如下:
public static void GBKFileToUtf8File(String filename) throws IOException {
final String shift = "GBK";
final String utf8 = "utf-8";
String backupfilename = filename + ".backup";
File f = new File(filename);
File outf = new File(backupfilename);
f.renameTo(outf);
java.io.FileInputStream in = new java.io.FileInputStream(backupfilename);
java.io.InputStreamReader isr = new java.io.InputStreamReader(in, shift);
java.io.BufferedReader br = (new java.io.BufferedReader(isr));
// open output stream
java.io.FileOutputStream out = new java.io.FileOutputStream(filename);
java.io.BufferedWriter bw = new java.io.BufferedWriter(
new java.io.OutputStreamWriter(out, utf8));
char[] buffer = new char[4096];
int len;
while ((len = br.read(buffer)) != -1)
bw.write(buffer, 0, len);
br.close();
bw.flush();
bw.close();
}
相关文章
- Delphi 让自己的软件实现双击打开文件 转
- DOS、Mac 和 Unix 文件格式[转]
- [转]让程序在崩溃时体面的退出之Dump文件
- 转:解决Eclipse中.properties文件中文乱码问题
- (转)linux下进程的进程最大数、最大线程数、进程打开的文件数和ulimit命令修改硬件资源限制
- 【转】java将excel文件转换成txt格式文件
- gbk文件转为utf8文件
- [C/C++]_[Unicode转Utf8,Ansi转Unicode,Ansi文件转Utf8文件]
- [转] linux中.o,.a,.o,.so文件的意义和编程实现
- [转]JSP或servlet中(以及上传下载文件)中文乱码或不显示的解决方案