0

さて、最初の投稿、イェーイ!今、私はこのトピックがすでに殴打されて死んでいることを知っています。しかし、ここに質問があります:

テキストファイルからスペースで区切られた単語を読み取り、単語を昇順で表示するプログラムを作成します。(2つの単語が同じ場合は、1つだけを表示します)。コマンドラインからテキストファイル名を渡します。テキストファイルには、スペースで区切られた単語のみが含まれていると想定します。

これで、ファイル部分からの読み取りがわかりました。しかし、どうすれば「コマンドラインからファイル名を渡す」ことができますか?そして、独自性の要素があります。

ヘルプ?

編集:あなたの助けをありがとうみんな。これが私が今立っているところです:

import java.io.*;
import java.util.*;

public class Splittext {
    public static void main(String[] args) {
        String fileName = args[0];
        Scanner s = null;

        try {
            s = new Scanner(new BufferedReader(new FileReader(fileName)));
                while (s.hasNext()) {
                    System.out.println(s.next());
                }
            } catch (FileNotFoundException fnfe) {
            System.exit(0);
        } finally {
               if (s != null) {
                   s.close();
                }
            }


       TreeSet<String> ts = new TreeSet<String>();

       ts.add(s);

       Iterator it = ts.iterator();

       while(it.hasNext()) {
           String value = (String)it.next();
           System.out.println("Result :" + result);
        }
    }        
}

しかし、これは次のようになります。add(java.util.Scanner)に適したメソッドはありません。メソッドjava.util.TreeSet.add(java.lang.String)は適用されません。

初心者の質問でごめんなさい!本当に助けに感謝します:)

4

3 に答える 3

3

このようにしてください。

public static void main(String args[]) {
    String fileName = args[0];
    Scanner s = null;

    try {
        s = new Scanner(new BufferedReader(new FileReader(fileName));

        while (s.hasNext()) {
            System.out.println(s.next());
        }
    } finally {
        if (s != null) {
            s.close();
        }
    }
}

このように実行します

java classname readthisfile.txt
于 2013-03-18T19:49:26.610 に答える
0

しかし、どうすれば「コマンドラインからファイル名を渡す」ことができますか?

public static void main(String args[])
{
    final String filename = args[0];
    // ...
}

そして、独自性の要素があります。

そしてソートファクター。

  1. すべての単語をに挿入しますTreeSet
  2. それを繰り返し、値を出力します。それらはソートされ、一意になります。
于 2013-03-18T19:49:31.613 に答える
0

アプリケーションを開始すると、main関数がString[] args渡されます。ここで、入力引数にアクセスします。

例えば:

java -cp . my.class.Example Happy Days

これを受け取るExampleクラスが表示されます。

public static void main(String[] args) {
  // args.length == 2
  // args[0] = "Happy"
  // args[1] = "Days"
}
于 2013-03-18T19:49:50.730 に答える