我不知道如何描述它,但我会尝试。好的,我希望能够构建我的 java 程序,以便当它打开时,它的外观和工作方式与在控制台中完全相同。因此,它读取 Scanner 类并正常打印,并执行它在控制台中会执行的所有操作。我四处寻找这个并没有发现任何东西。我可以很容易地制作一个 gui java 程序,但我宁愿有一个终端,类似于控制台的程序,它与 java 控制台完全一样,谢谢。
3 回答
根据您的评论:
但我想一次做数百个链接,使用扫描仪 nextLine() 方法可以完美地工作,我可以在 Java 控制台中发布 100 或 200 个链接,它会自动将它们排序。
我猜你想要的是批处理。您可以在一个文本文件中包含 100 或 200 个链接,每行一个。然后是你的 Java 程序:
import java.io.*;
public class Batch{
public static void main(String args[]){
try{
FileInputStream fstream = new FileInputStream("sample.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String line;
while((line = br.readLine()) != null){
//Do something with your line
System.out.println(line);
}
in.close();
}catch(IOException ioe){
System.err.println(ioe.getMessage());
}
}
}
你编译这个程序,打开一个控制台并运行它:
java Batch
它读取您的 sample.txt 文件并为每一行做一些事情,在这种情况下将其打印到控制台。
您可能正在寻找java.lang.System
该类的标准输入和输出成员:
class HelloWorld {
public static void main(String... argv) {
System.out.println("Hello, World!");
}
}
对于处理输入,您可以在标准输入上使用 Scanner:
Scanner scanner = new Scanner(System.in);
如果您想变得非常花哨,可以将一些输出打印到System.err
,PrintStream
就像System.out
.
从评论中,“当我编译我的类时,我得到一个 jar 文件,当我点击它时它什么也不做,我认为这是正常的,因为它不是 gui,”我认为你的问题是操作系统问题(Windows?),不是Java问题。
Windows 映射 JAR 文件的“打开”操作以使用 运行javaw.exe
,这不会创建控制台。您要么需要修改每台机器上的默认文件关联,要么创建类似批处理文件的东西来覆盖此默认行为。
您可以编写两个程序:第一个是您实际的“控制台”Java 应用程序,另一个只是Runtime.exec()
用于创建 Windows 控制台 ( cmd
) 并在其中执行第一个程序的 shell。
还有一些开源项目(检查 Sourceforge)将您的 JAR 包装在 Windows 可执行文件中。
使用launch4j。它将创建一个非 GUI 应用程序的 exe。在 launch4j 中转到标题部分并检查控制台选项。完毕!