1

うまく説明する方法がわかりませんが、やってみます。わかりました。Javaプログラムをビルドして、開いたときにコンソールとまったく同じように表示され、動作するようにしたいと思います。したがって、Scannerクラスを読み取り、通常どおりに印刷し、コンソールにある場合に実行するすべてのことを実行します。私はこれを探し回ったが、何も見つからなかった。私はかなり簡単にGUIJavaプログラムを作成できますが、Javaコンソールとまったく同じように機能する、プログラムのようなコンソールの端末が必要です。

4

3 に答える 3

3

あなたのコメントに基づく:

しかし、スキャナーのnextLine()メソッドを使用して完全に機能する一度に数百のリンクを実行したいので、Javaコンソールに100または200のリンクを投稿するだけで、それらが自動的に分類されます。

バッチ処理が欲しいと思います。1行に1つずつ、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ファイルを読み取り、各行に対して何かを実行します。この場合は、コンソールに出力します。

于 2010-04-21T23:32:27.457 に答える
1

java.lang.Systemクラスの標準の入力メンバーと出力メンバーを探している可能性があります。

class HelloWorld {

  public static void main(String... argv) {
    System.out.println("Hello, World!");
  }

}

入力の処理には、標準入力でスキャナーを使用できます。

Scanner scanner = new Scanner(System.in);

本当に凝ったものにしたい場合は、出力の一部をに出力できます。System.errこれは、PrintStreamと同じSystem.outです。


コメントから、「クラスをコンパイルすると、jarファイルが表示されますが、クリックしても何も起こりません。これは、GUIではないので正常だと思います」あなたの問題はオペレーティングシステムの問題(Windows?)だと思います。 Javaの問題ではありません。

Windowsは、JARファイルの「開く」アクションをで実行するようにマップしますjavaw.exe。これはコンソールを作成しません。各マシンのデフォルトのファイルの関連付けを変更するか、このデフォルトの動作をオーバーライドするバッチファイルのようなものを作成する必要があります。

2つのプログラムを作成できます。1つは実際の「コンソール」Javaアプリケーションで、もう1つはRuntime.exec()Windowsコンソール(cmd)を作成し、その中で最初のプログラムを実行するために使用するシェルです。

JARをWindows実行可能ファイルでラップするオープンソースプロジェクト(Sourceforgeをチェック)もあります。

于 2010-04-21T22:57:35.007 に答える
0

launch4jを使用します。GUI以外のアプリケーションのexeを作成します。launch4jで、ヘッダーセクションに移動し、コンソールオプションを確認します。終わり! コンソールオプションを確認してください

jarファイルを選択します

jreを選択

于 2021-08-20T13:16:18.447 に答える