我需要将文件的编码从ANSI(windows-1252)更改为UTF8.我写下面的程序是通过java来完成的.此程序将字符转换为UTF8,但是当我在notepade ++中打开文件时,编码类型显示为ANSI为UTF8.当我在访问数据库中导入此文件时,这会给我带来错误.仅需要具有UTF8编码的文件.此外,还要求转换文件而不在任何编辑器中打开它.
公共类ConvertFromAnsiToUtf8 {
private static final char BYTE_ORDER_MARK = '\uFEFF';
private static final String ANSI_CODE = "windows-1252";
private static final String UTF_CODE = "UTF8";
private static final Charset ANSI_CHARSET = Charset.forName(ANSI_CODE);
public static void main(String[] args) {
List<File> fileList;
File inputFolder = new File(args[0]);
if (!inputFolder.isDirectory()) {
return;
}
File parentDir = new File(inputFolder.getParent() + "\\"
+ inputFolder.getName() + "_converted");
if (parentDir.exists()) {
return;
}
if (parentDir.mkdir()) {
} else {
return;
}
fileList = new ArrayList<File>();
for (final …Run Code Online (Sandbox Code Playgroud)