看板 java 關於我們 聯絡資訊
### 作業系統需求 ### Windows,理論上 Linux 應該也可以。 ### 執行步驟 ### 1.安裝好JDK 1.6 + 2.撰寫Submit123.java存放到硬碟,例如 x:\ (widnows) 或 ~/ (linux)下, Submit123.java內容如下 import java.io.File; import java.io.FileWriter; import java.lang.reflect.Method; import java.util.Arrays; import javax.tools.JavaCompiler; import javax.tools.StandardJavaFileManager; import javax.tools.StandardLocation; import javax.tools.ToolProvider; public class Submit123 { public static void main(String[] args) throws Exception { File sourceFile = new File("./Output123.java"); FileWriter writer = new FileWriter(sourceFile); writer.write("public class Output123{ \n" + " public static void main(String[] args) {\n" + " char[] ch = new char[]{'1','2','3'};\n" + " System.out.println(Integer.parseInt(String.valueOf(ch)));\n" + " }\n" + "}"); writer.close(); JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null); fileManager.setLocation(StandardLocation.CLASS_OUTPUT, Arrays.asList(new File("./"))); compiler.getTask(null, fileManager, null, null, null, fileManager.getJavaFileObjectsFromFiles(Arrays.asList(sourceFile))).call(); fileManager.close(); //sourceFile.deleteOnExit(); Class params[] = {}; Object paramsObj[] = {}; Class class123 = Class.forName("Output123"); Method main = class123.getDeclaredMethod("main", args.getClass()); Object[] passedArgs = { args }; main.invoke(null, passedArgs); } } 3.開啟Dos視窗或Terminator,cd到 x: 或 ~ 並執行命令 javac Submit123.java 4.執行命令,產出 Output123.class 並執行 java Submit123 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 223.142.162.170
PsMonkey:違反了修改後的活動辦法...... 真是抱歉 Orz 09/27 09:01