`

文件编码格式转换

    博客分类:
  • java
 
阅读更多
批量转换文件编码格式: 

package com.code;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
/***
 * 编码转化器
 * @author admin
 */
public class EncodingChange {
	  String filesDir = "";  
	     String filesNDir = "";  
	   
	     public static void main(String args[]) throws IOException {  
	    	System.out.println(System.getProperty("file.encoding"));  
	         cp("F:/indexDir/data",  
	                 "F:/indexDir/data2",  
	                 "GBK", "UTF-8");   //将F:/indexDir/data源文件,编码格式gbk,转换为目标格式utf-8
	     }  
	   
	     static void cp(String baseDir, String ndir, String code1, String code2)  
	             throws IOException {  
	         File file = new File(baseDir);  
	         if(file.isDirectory())  
	          new File(ndir).mkdirs();  
	         if (file.isDirectory()) {  
	               
	             String list[] = file.list();  
	             for (String f : list) {  
	                 cp(baseDir + "/" + f, ndir + "/" + f, code1, code2);  
	             }  
	         } else {  
	             if (baseDir.indexOf(".txt") > 0 || baseDir.indexOf(".html") > 0 || baseDir.indexOf(".js") > 0 || baseDir.indexOf(".xml") > 0 || baseDir.indexOf(".css") > 0) {  
	   
	                 convert(baseDir, ndir, code1, code2);  
	                 InputStreamReader read = new InputStreamReader(  
	                         new FileInputStream(baseDir), code1);// 或者UNICODE,UTF-16  
	                 BufferedReader reader = new BufferedReader(read);  
	                 String line;  
	   
	                 while ((line = reader.readLine()) != null) {  
	                     System.out.println(line);  
	                 }  
	                 reader.close();  
	   
	                 read.close();  
	             }  
	   
	         }  
	     }  
	   
	     public static void convert(String infile, String outfile, String from,  
	             String to) throws IOException, UnsupportedEncodingException {  
	           
	         // set up byte streams  
	         InputStream in;  
	         if (infile != null)  
	             in = new FileInputStream(infile);  
	         else  
	             in = System.in;  
	         OutputStream out;  
	         if (outfile != null)  
	             out = new FileOutputStream(outfile);  
	         else  
	             out = System.out;  
	   
	         // Use default encoding if no encoding is specified.  
	         if (from == null)  
	             from = System.getProperty("file.encoding");  
	         if (to == null)  
	             to = System.getProperty("file.encoding");  
	   
	         // Set up character stream  
	         Reader r = new BufferedReader(new InputStreamReader(in, from));  
	         Writer w = new BufferedWriter(new OutputStreamWriter(out, to));  
	   
	         // Copy characters from input to output. The InputStreamReader  
	         // converts from the input encoding to Unicode,, and the  
	         // OutputStreamWriter  
	         // converts from Unicode to the output encoding. Characters that cannot  
	         // be  
	         // represented in the output encoding are output as '?'  
	         char[] buffer = new char[4096];  
	         int len;  
	         while ((len = r.read(buffer)) != -1)  
	             w.write(buffer, 0, len);  
	         r.close();  
	         w.flush();  
	         w.close();  
	     }  
	   
}
分享到:
评论

相关推荐

    批量文件编码格式转换工具.zip

    批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip...

    文本文件编码格式转换器

    从网上下载的源码经常会出现源码文件编码格式和IDE默认的格式不匹配的情况,特别是源码文件中有中文汉字(包括注释)的情况下,特特别是不同IDE、不同系统下编辑的源码。虽然IDE自带可以修改文件的编码格式,但是...

    文件编码格式转换工具.exe

    文件编码格式转换工具.exe

    Linux下查看文件编码,文件编码格式转换和文件名编码.doc

    文件编码转换可以通过 Vim 或者 iconv 命令来实现。在 Vim 中,可以使用 `set fileencoding=utf-8` 命令来将文件转换成 UTF-8 编码格式。使用 iconv 命令可以将文件从一种编码格式转换成另一种编码格式,例如,将一...

    批量文件编码格式转换工具.zip学习资料

    批量文件编码格式转换工具.zip学习资料

    编码批量转换工具

    批量字符编码转换工具是文件编码转换的最佳工具。是您必备的unicode编码转换器,它帮助您快速完成编码批量转换。 utf8 转gb2312编码转换举例,编码转换软件工作原理 比如要把D:\web目录下的php文件和html文件由utf8...

    文件内容替换与文件编码格式转换java源码

    Java语言提供了强大的I/O和字符集操作功能,可以方便地处理文件编码转换。主要涉及的类有`java.io.File`、`java.nio.file.Files`、`java.nio.charset.Charset`等。以下是一些关键步骤: 1. **读取文件**:使用`...

    xmljava系统源码-FilesCodingConvert:批量文件编码格式转换工具

    #批量文件编码格式转换工具 ##简介 最近开始学习使用Android Studio,因为它的方便易用,我打算以后就不在使用ADT的方式编写Android项目了。当从Eclipse项目向AS项目迁移时遇到了一个问题,就是文件编码格式的问题,...

    linux转化windows文件编码格式脚本

    Linux 转换 Windows 文件编码格式脚本 Linux 转换 Windows 文件编码格式脚本是将 Windows 上的文件编码格式转换为 UTF-8 编码,以便在移植 Windows 代码到 Linux 下时避免注释代码乱码和编码格式引起的编译错误。 ...

    文件编码转换器 手机电子书格式转换器

    是否下载了一个文本文件打开是乱码呢?是否手机电子书编码需要转换呢...原创文件编码转换器。Java编写,多平台运行。源码奉献。啊啊啊啊啊啊。。。只要1分。如果不想给分,可以email我 iamjemy@gmail.com邮件发送给你。

    Linux查看文件编码格式及文件编码转换

    以下是几种常见的文件编码转换方法: #### 使用Vim转换文件编码 1. **直接在Vim中转换**:打开文件后,可以在Vim命令模式下直接设置文件的编码格式,例如将文件转换为UTF-8编码: ```vim :set fileencoding=utf-...

    JAVA文件编码格式转换:UTF-8转为GB2312

    能够集成到Source Insight中,解决JAVA文件乱码问题

    java文件编码转换

    Java写的一个小程序,用于批量转换GBK编码的java源文件为UTF-8编码格式

    Qt文件编码批量转换

    Qt5.9开发的文件编码转换。该工具我用来在Windows7下面VS2015编译器与MinGW编译器编码转换。MinGW编译器使用UTF-8编码,VS2015使用GB2312编码。 预编译头文件缺失,将头文件替换为 #include #include #include #...

    C#:批量修改文本编码为UTF-8(含源码)

    下面我们将详细介绍如何实现批量修改文件编码的C#代码: 1. **遍历文件夹**: 首先,我们需要获取指定文件夹及其子文件夹下的所有文件。可以使用DirectoryInfo类和GetFiles方法配合递归实现。 2. **检查文件扩展...

    java 文件编码转换

    在IT行业中,文件编码转换是一项基础且重要的任务,尤其是在处理多语言或多系统交互时。Java作为一种广泛使用的编程语言,提供了丰富的API来支持文件编码的识别和转换。标题"java 文件编码转换"指的是使用Java来解决...

    GB/BIG5/UTF-8 文件编码批量转换程序

    因此,需要进行文件编码转换。"GB/BIG5/UTF-8 文件编码批量转换程序"就是解决这个问题的工具,它可以将GB2312(GBK)、BIG5编码的文件批量转换为UTF-8编码,确保在各种环境中正确显示文本。 3. **批量转换** 批量...

    批量转换文件编码格式为UTF-8工具

    批量转换文件编码格式为UTF-8工具.zip 支持多层文件夹替换! 使用说明: 1.文件根目录:即您要转码的文件所在根目录 2.转码文件目录:即您转码后的文件所在目录 3.转码文件后缀:指[文件根目录]下,需要转码的文件后缀,...

Global site tag (gtag.js) - Google Analytics