这是(以编程方式)创建java文件的正确方法吗?
下面是以编程方式创建java文件的代码 这条路对吗?或者还有别的办法吗这是(以编程方式)创建java文件的正确方法吗?,java,Java,下面是以编程方式创建java文件的代码 这条路对吗?或者还有别的办法吗 public static void main(String[] args) throws IOException { File atlas = new File("D:/WIP/pac/n/sample.txt"); if (!atlas.exists()) { System.out.println("File not exist"); }
public static void main(String[] args) throws IOException {
File atlas = new File("D:/WIP/pac/n/sample.txt");
if (!atlas.exists()) {
System.out.println("File not exist");
}
FileHandle mAtlasHandle = new FileHandle(atlas);
BufferedReader reader = mAtlasHandle.reader(1024);
String line = null;
ArrayList<String> mArrayList = new ArrayList<String>();
while ((line = reader.readLine()) != null) {
mArrayList.add(line);
}
File file = new File("D:/WIP/pac/n/Sample.java");
if (!file.exists()) {
file.createNewFile();
}
String packageName = "package com.atom.lib;";
PrintWriter writer = new PrintWriter(file);
String mString = new String(file.getName());
String name = mString.replaceFirst("[.][^.]+$", "");
String output = Character.toUpperCase(name.charAt(0)) + name.substring(1);
writer.println(packageName);
writer.println("public class " + output);
writer.println("{");
for (String obj : mArrayList) {
writer.println("public String " + obj + "=\"" + obj + "\";");
}
writer.println("}");
writer.close();
}
publicstaticvoidmain(字符串[]args)引发IOException{
文件atlas=新文件(“D:/WIP/pac/n/sample.txt”);
如果(!atlas.exists()){
System.out.println(“文件不存在”);
}
FileHandle mAtlasHandle=新的FileHandle(atlas);
BufferedReader reader=mAtlasHandle.reader(1024);
字符串行=null;
ArrayList mArrayList=新建ArrayList();
而((line=reader.readLine())!=null){
婚姻列表。添加(行);
}
File File=新文件(“D:/WIP/pac/n/Sample.java”);
如果(!file.exists()){
createNewFile();
}
字符串packageName=“package com.atom.lib;”;
PrintWriter=新的PrintWriter(文件);
String mString=新字符串(file.getName());
字符串名称=mString.replaceFirst(“[.][^.]+$”,“”);
字符串输出=Character.toUpperCase(name.charAt(0))+name.substring(1);
writer.println(packageName);
writer.println(“公共类”+输出);
writer.println(“{”);
for(字符串对象:结婚名单){
println(“公共字符串”+obj+“=\”+obj+“\”;”;
}
writer.println(“}”);
writer.close();
}
是的,有更好的方法。用于以编程方式创建Java文件,而不是使用println()
或字符串附加方法。从他们的网站:
CodeModel是用于代码生成器的Java库;它提供了一种比PrintStream.println()更好的生成Java程序的方法。该项目是JAXB RI的衍生产品,其模式编译器用于生成Java源文件
但是CodelModel的主要问题是文档很少。API文档是唯一的圣经,你可以有这个
如果您熟悉Eclipse插件开发,那么可以使用以编程方式创建Java文件。它甚至可以在没有Eclipse的情况下独立工作。是的,有更好的方法。用于以编程方式创建Java文件,而不是使用println()
或字符串附加方法。从他们的网站:
CodeModel是用于代码生成器的Java库;它提供了一种比PrintStream.println()更好的生成Java程序的方法。该项目是JAXB RI的衍生产品,其模式编译器用于生成Java源文件
但是CodelModel的主要问题是文档很少。API文档是唯一的圣经,你可以有这个
如果您熟悉Eclipse插件开发,那么可以使用以编程方式创建Java文件。它甚至可以在没有Eclipse的情况下独立工作。我使用模板生成java源文件。这是一个非常强大的工具,它允许您定义源模板和模型,您可以在其中定义变量、方法和所有内容,并允许您编译为任何多种格式(txt、java等)
您可以首先为所需的java源文件定义带有占位符的模板,然后可以通过编程应用占位符的值
给定示例说明此API的工作原理,您可以扩展该示例以创建java源文件
我使用模板生成java源文件。这是一个非常强大的工具,它允许您定义源模板和模型,您可以在其中定义变量、方法和所有内容,并允许您编译为任何多种格式(txt、java等)
您可以首先为所需的java源文件定义带有占位符的模板,然后可以通过编程应用占位符的值
给定示例说明此API的工作原理,您可以扩展该示例以创建java源文件