0

文字列のみを含むファイル入力から単語を取り込んで、各単語を個別に1つの配列に格納しようとしています(ArrayList許可されていません)。

以下の私のコードはファイル入力を取り込みますが、それを1つのチャンクとして取り込みます。たとえば、ファイル入力が「ONE TWO THREE」の場合、各単語に配列(、、および)に独自のインデックスを持たせたいのですarray[0] = "ONE"array[1]="TWO"array[2]="THREE"以下のコードは文を取得してすべてを。に入れますarray[0] = "ONE TWO THREE"。どうすればこれを修正できますか?

int i = 0;
String wd = "";
while (in.hasNextLine() ) {                
    wd = in.nextLine()  ;
    array[i] = wd;
    i++; 
    System.out.println("wd");
}
4

4 に答える 4

0

区切り文字をスペース""に設定してから、.next()を使用します。

in.useDelimiter(" ");
while(in.hasNext()){
    wd = in.next();
    //wd will be one word
}
于 2013-03-06T16:33:36.117 に答える
0

ファイル入力が「ONE TWO THREE」の場合、配列内に各単語に独自のスペースを持たせたいので、配列[0] = 1、配列1 = TWO、および配列[2] = THREE

区切り文字として空白を含む String#split(delim)を使用します。

String fileInput = "ONE TWO THREE";
String[] array = filrInput.split("\\s");
于 2013-03-06T16:27:58.870 に答える
0

ラインの代わりに

array[i] = wd; // since wd is the whole line, this puts lines in the array

読み込んだ行を分割し、分割されたアイテムを配列に入れたいとします。

String[] items = wd.split("\\s+"); // splits on any whitespace
for (String item : items) { // iterate through the items and shove them in the array
    array[i] = item;
    i++;
}
于 2013-03-06T16:29:51.873 に答える
0

これは、ファイルから LINES を読み取るために発生します。次のようなことができます。

String array[]=in.nextLine().split(" ");
于 2013-03-06T16:30:31.717 に答える