怎样用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;
}
}
}
}
}
}
}
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;
}
}
}
}
}
}
}