import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileFilter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
/**
* 类描述: 批量转换文件编码格式
*/
public class EncodeConverter
{
// 原文件目录
private static String srcDir = "F:\\Users\\CHEEN\\Desktop\\src\\";
// 转换后的存放目录
private static String desDir = "F:\\Users\\CHEEN\\Desktop\\src1\\";
// 源文件编码
private static String srcEncode = "gbk";
// 输出文件编码
private static String desEncode = "utf-8";
/**
* 处理的文件过滤,过滤器
*/
private static FileFilter filter = new FileFilter()
{
public boolean accept(File pathname)
{
// 只处理:目录 或是 .java文件
if(pathname.isDirectory() || (pathname.isFile() && pathname.getName().endsWith(".java")))
{
return true;
}
else
{
return false;
}
}
};
/**
* @param file
*/
public static void readDir(File file)
{
// 以过滤器作为参数
File[] files = file.listFiles(filter);
for (File subFile : files)
{
/**
* 建立目标目录
*/
if (subFile.isDirectory())
{
File file3 = new File(desDir + subFile.getAbsolutePath().substring(srcDir.length()-5));
if (!file3.exists())
{
file3.mkdirs();
}
file3 = null;
readDir(subFile);
}
/**
* 建立目标文件
*/
else
{
System.err.println("一源文件:/t" + subFile.getAbsolutePath() + "/n目标文件:/t" + (desDir + subFile.getAbsolutePath().substring(srcDir.length() - 5)));
System.err.println("-----------------------------------------------------------------");
try
{
convert(subFile.getAbsolutePath(),desDir + subFile.getAbsolutePath().substring(srcDir.length() - 5),srcEncode, desEncode);
} catch (UnsupportedEncodingException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
}
/**
* @param infile 源文件路径
* @param outfile 输出文件路径
* @param from 源文件编码
* @param to 目标文件编码
* @throws IOException
* @throws UnsupportedEncodingException
*/
public static void convert(String infile, String outfile, String from,
String to) throws IOException,UnsupportedEncodingException
{
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(infile), from));
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outfile), to)));
String reading;
while ((reading = in.readLine()) != null)
{
out.println(reading);
}
out.close();
in.close();
}
public static void main(String[] args)
{
// 建立目标文件夹
File desFile = new File(desDir);
if (!desFile.exists())
{
desFile.mkdir();
}
desFile = null;
File srcFile = new File(srcDir);
// 读取目录 循环转换文件
readDir(srcFile);
srcFile = null;
}
}
分享到:
相关推荐
批量转换文件编码格式为UTF-8工具.zip 支持多层文件夹替换! 使用说明: 1.文件根目录:即您要转码的文件所在根目录 2.转码文件目录:即您转码后的文件所在目录 3.转码文件后缀:指[文件根目录]下,需要转码的文件后缀,...
批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip批量文件编码格式转换工具.zip 批量文件编码格式转换工具.zip...
批量转换文件编码 超级批量编码转换 批量转换编码 编码批量转换工具 批量转换txt编码 linux 批量转换编码 编码格式批量转换 php 字符编码转换 字符编码转换 java 字符编码转换
Qt5.9开发的文件编码转换。该工具我用来在Windows7下面VS2015编译器与MinGW编译器编码转换。MinGW编译器使用UTF-8编码,VS2015使用GB2312编码。 预编译头文件缺失,将头文件替换为 #include #include #include #...
Java批量转换文件编码格式的实现方法及实例代码 在软件开发中,编码格式的转换是一个常见的问题,特别是在项目迁移或升级时,需要将编码格式从GBK转换到UTF-8,以适应新的项目需求。然而,手动转换文件编码格式是一...
### Python批量转换文件编码格式详解 #### 背景与需求 在日常工作中,我们可能会遇到需要处理大量文件的情况,特别是在文件编码不统一时。例如,如果一批文件原本使用GBK编码,而我们的应用或系统更倾向于使用UTF-8...
本文将深入探讨批量修改文件编码的必要性、工作原理以及如何使用工具进行批量操作。 批量修改文件编码的需求往往源于项目需求的多样性。例如,某些项目可能需要将原本使用GBK编码的文件转换为UTF-8编码,以便在不同...
编码批量转换工具 已经用过,绝对好用 【基本介绍】 "批量字符编码转换工具"是绿色软件,单文件免安装,请放心试用。 批量字符编码转换工具可以在gbk,gb23123,unicode,utf8,ansi之间进行汉字编码转换。 【软件特点】...
批量文件编码转换 只识别文本类文件,识别的是文件头,不是后缀。所以只要是文本文件,无论什么后缀都能识别。如有需要联系 yyxu123@163.com
在IT领域,文件编码是数据存储和传输中的一个重要概念,不同的编码方式决定了字符集的表示方式,例如GB2312和UTF-8就是两种常见的字符编码格式。本工具名为"批量文件编码转换工具",专门针对那些需要处理大量文件...
总结来说,Java提供了一种有效的方法来批量转换文件编码,只需指定文件路径、编码类型以及适当的读写工具。这使得开发者能够轻松地在不同的编码格式之间切换,确保数据在各种系统和环境下的兼容性。在实际项目中,...
本文将深入探讨“文件编码格式批量转换工具”,重点讲解如何将文件从一种编码格式转换为UTF-8编码,以及涉及的字符集和Java编程语言的相关知识。 标题“文件编码格式批量转换工具.rar”表明这是一个可以处理多个...
用于批量转换txt文本文档的编码格式。通常我们电脑里的txt文件都是ASNI编码,放到手机,MP3等设备里面,打开看到的都是乱码。所以我们必须先把它们转换为Unicode格式,才能够在手机和MP3上面打开。如果有大量的文件...
Txt文件编码批量转换器用于批量转换txt文本文档的编码格式。通常,我们电脑里的txt文件都是ASNI编码,当放到手机或MP3里时,打开看到的往往都是乱码,面目全非。我们需要先把它们转换为Unicode格式,才能够在手机和...
此工具可批量修改文件编码(默认gb2312转utf8,可修改) python版本:2.7 使用说明: dirGb2312ToUtf8('F:\work\MyProject\Source\MyProject') 把以上路径改为自己需要转换的文件夹即可
批量文件编码转换器的主要功能在于将文件从一种编码格式批量转换为另一种,例如将GBK编码的文件转换成UTF-8编码。这种转换对于处理旧项目、迁移数据或者确保文件在不同系统间兼容性是十分必要的。与手动使用文本编辑...
文件编码格式批量转换格式 支持整目录转换。 转后后的数据保持源目录的结构输出到全新的目录下。 系统支持输入GB2312,系统默认,UTF-8 / UTF-16。 如果是微软的stupid格式的文本,系统支持自动判断数据格式。 ...
批量转换文本文件的编码格式是一个实用的需求,特别是在处理大量来自不同源的文件时。"EncodingConverter-1.0"这个工具就提供了这样的功能。它允许用户直接在RAR压缩包内操作,无需先解压,提高了工作效率。用户可以...
"批量转换文件编码工具"是一个专门解决文件编码问题的实用软件,尤其适用于处理大量文件的情况。 这个工具的核心功能在于“批量转换”,这意味着用户可以一次性选择多个文件或整个目录,然后统一进行编码转换。这...