-1

テキストファイルから読み取るプログラムが必要です。テキストファイル:

S 3
H 5
L 5
B 4 5

S、H、L、および B はそれぞれ特定の形状 (正方形、三角形など) を指し、その後の数字は高さと幅 (該当する場合) です。たとえば、「S 3」は高さ 3 の正方形を意味します。

* * * 
* * * 
* * * 

これまでのところ、私はこれを持っています:

File dataFile = new File("textfile.txt");

            Scanner in;
            in = new Scanner (dataFile);

            int variable = in.nextInt();
            System.out.println(variable);

(私はそれをテストするために int の「変数」を使用しました。)したがって、「S」は整数ではないため、使用できません。

int variable = in.nextInt();

では、プログラムにそれを文字列とその直後の整数として読み取らせるにはどうすればよいでしょうか?

4

2 に答える 2

0

実行できる 1 つのアプローチには、次のものが含まれますString.split

in.nextLine()基本的な考え方は、 を使用split()して一度に 1 行ずつ読み取り、 を" "区切り文字として使用することです。だから、次のようなもの

String[] tokens = in.nextLine().split(" ");

あなたの入力例では、最初の行が だった場合、要素とを持つ長さ 2 の配列に"S 3"なるtokensという考えです。より一般的には、結果の配列の最初の要素は文字である必要があり、配列の残りの部分は必要な情報を取得するために自分で解析できる高さと幅のパラメーターである必要があります。String"S""3"

于 2013-09-30T23:20:42.207 に答える