最近写一些网页,这些网页里面有部分内容是相同的,网页文件名要求也是有规律的。一看这些需求就觉得可以用程序实现。一般做法是重复复制粘贴的动作,但是文件多起来就有点烦了。所以要用程序解放生产力。
程序代码
public class NewFile {
private static int range1;
private static int range2;
private static int len;
static String fname;
static String ename;
static String writestr="<!DOCTYPE html>\n" +
"<html lang=\"en\">\n" +
"<head>\n" +
" <meta charset=\"UTF-8\">\n" +
" <title>Title</title>\n" +
"</head>\n" +
"<body>\n" +
"\n" +
"</body>\n" +
"</html>";
public static void main(String[] args) throws IOException {
System.out.println("请输入文件前缀名字:");
Scanner sc=new Scanner(System.in);
fname=sc.next();
System.out.println("请输入范围,空格分开");//
range1=sc.nextInt();
range2=sc.nextInt();
System.out.println("请输入文件后缀名");
ename=sc.next();
len=range2-range1; //文件个数
List<String> namelist;
while (len<0) {
System.out.println("范围不合法,请重新输入:");
range1 = sc.nextInt();
range2 = sc.nextInt();
len = range2 - range1;
}
namelist=getfilelistname();
for (String name:namelist) {
File file=new File(name);
file.createNewFile();
writesome(file,writestr);
System.out.println(name);
}
}
public static List<String> getfilelistname(){
List<String> filelistname;
filelistname=new ArrayList<>();
String filename;
for (int i = range1; i <=range2; i++) {
filename=fname+i+"."+ename;
filelistname.add(filename);
}
return filelistname;
}
public static void writesome(File file,String str){
try {
FileWriter fileWriter=new FileWriter(file);
fileWriter.write(str);
fileWriter.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行结果: