怎样用eclipse把文件编码批量转换?包括JS,JSP,HTML
我说的不是页面本身的,而是 在ECLIPSE中,右键点击文件,选择属性,然后在右边的列表中选择 的这种,但这样只能一个一个的改,怎么能批量?????
呵呵!我平时也是一个个的改的!
刚才看了一下eclipse 的配置文件,找到如下方法,不过还是手工的哦!
在eclipse项目下有这么一个文件夹
.settings
下面有一个
org.eclipse.core.resources.prefs 文件
里面有类似这样的编码配置
INIFile code
-
#Wed Dec
26
12
:
59
:
37
CST
2007
eclipse.preferences.version
=
1
encoding//test/BlackVSWhite.java
=
UTF-
8
如果这里有的文件,替换成你要的编码就可以了。
如果没有? 你用任何办法,比如 dir /s > 1.txt , DOS 命令 拿到你要改的文件名列表,然后 .... 自己弄吧,尽量多使用替换
我想,如果你要改的文件超过100个,这个方法应该快些,否则可能不如手工快!
我一会弄一个小程序,自动生成那个encoding// 部分看看,弄好了我再贴上来
import
java.io.File;
import
java.io.IOException;


public
class
ReadFile
...
{

public static void main(String[] args) throws IOException ...{
read("e:/workplace/test", "UTF-8");
}


private static final String[] extentions = ...{ "java", "js", "html", "htm" };


public static void read(String filepath, String charset) throws IOException ...{
File f = new File(filepath);// 定义文件路径
String path;

if (f.exists() && f.isDirectory()) ...{// 判断是文件还是目录

if (f.listFiles().length == 0) ...{// 若目录下没有文件则直接删除
return;

} else ...{// 若有则把文件放进数组,并判断是否有下级目录
File delFile[] = f.listFiles();
int i = f.listFiles().length;

for (int j = 0; j < i; j++) ...{
path = delFile[j].getAbsolutePath();

if (delFile[j].isDirectory()) ...{
read(path, charset);// 递归调用del方法并取得子目录路径
}

for (String ext : extentions) ...{

if (path.endsWith(ext)) ...{
System.out.println("encoding//" + path.replaceAll("//", "/") + "=" + charset);
break;
}
}
}
}
}
}
}