私はすでにここにある私のものと同様の質問を閲覧しましたが、私にとってうまくいくものは見つかりませんでした.
基本的に、私がしなければならないことは、文字列でいっぱいのファイルを行ごとに読み取り、それらを行ごとに出力し、次に単語ごとに出力することです。.split を使用してこれを実現し、個々の文字列の配列を作成したいと思います。
たとえば、私のファイルには次のように書かれています:
The fat cat was black
The cow jump over the moon
I came to say hello world
等
ファイルを読み取り、ファイルを行ごとに印刷する方法を理解しましたが、単語ごとに印刷する方法がわかりません。これら 3 つはそれぞれ独自の機能を持っているため、何かを配置する場所でそれが何らかの役割を果たすかどうかはわかりません。
これは私の方法でこれまでに持っているものです:
static public void printWords( String [ ] arr, int count )
{
String [] s2 = arr[0].split( " " );
for( int i = 0; i < count; i++)
{
System.out.println( s2 [i] );
}
System.out.println();
}
しかし、これは私にエラーを与えています。私はいくつかのことを切り替えましたが、そのたびに行だけを印刷するか、特定のポイントで停止します。私が主に持っている唯一のものは、これに関連するメソッド呼び出しです。これは問題ではありません。誰かが何か洞察を持っているなら、それは大歓迎です。ありがとうございました!
編集:
私のコードの「カウント」は、読んでいるファイルの行数です。したがって、これは 3 です。
必要なものを取得するためにコードを微調整しましたが、最初の文のみが出力されます。
String [] s2 = arr[0].split( " " );
for (int j = 0 ; j < count ; j++)
{
for( int i = 3; i < s2.length; i++)
{
System.out.print( s2 [i] + " " );
}
System.out.println();
}
}
たとえば、これは
The fat cat was black
と表示されるだけです。私はその周りに別のループを構築しようとしています(私のコードで示されているように)が、ファイルの次の行に移動するのではなく、「The fat cat was black」を3回印刷するだけです。