![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
すみません、初心者です。Javaでテキストファイルから一行の文字列を読み込み、Stringの配列に格納したいと思っています。具体的には、マシンの/tmp/test.txtを読み込み、空白行は無視して格納したいです。ウェブを参考にして、以下のようには出来たのですが、最初にStringの配列を20個宣言しており、これをどうにかテキストファイルの行(マイナス空白行)の数だけ宣言させたいです。(理由はファイルによっては想定以上の個数の場合も有り得ますし、余分なメモリを使用することになるのと、後からこの配列を使用しやすい、といった諸々で。。)以下のコードをどのように変えると実現出来るかご教示頂けませんでしょうか。
(一行あたりの文字列はつながっており、空白が間に入る事はありません)
import java.io.*;
public class test {
public static void main(String[] args) throws Exception {
int i=0;
String[] str = new String[20];
FileReader fr = new FileReader("/tmp/test.txt");
StreamTokenizer st=new StreamTokenizer(fr);
while(st.nextToken()!=StreamTokenizer.TT_EOF) {
System.out.println(st.sval+" ");
str[i]=st.sval;
i++;
}
fr.close();
}
}
(test.txtが以下の場合)
-----------------------
fdjosa
djsoafdjfdajof
jsoafds
fdsaoofdafd
fdjso
fjds
-----------------------
(配列は以下になることを想定)
str[0]=fdjosa
str[1]=djsoafdjfdajof
str[2]jsoafds
str[3]=fdsaoofdafd
str[4]=fdjso
str[5]=fjds
(*配列数であるstr.lengthは6)
No.1ベストアンサー
- 回答日時:
Listを使ってみてはいかがでしょう?
空白行を飛ばすのなら、
if(st.sval.equals("")) continue;
とかどうでしょう?
参考URL:http://www.j2ee.me/javase/ja/6/docs/ja/api/java/ …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- Java java final 1 2022/06/10 22:49
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- Java Java 配列<選挙> 4 2023/07/31 15:07
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページング
-
【C#】ハッシュテーブル(連想...
-
csvファイルを2次元配列に格納
-
0から99の数字をランダムに...
-
配列をセッションに割り当てた後で
-
C言語でunsigned char配列を連...
-
配列で、値の入っている要素数...
-
2次元配列のコピー
-
負の整数になるまで入力→その平...
-
ArrayListを使った多次元配列の...
-
【Ajax通信&Java】配列の受け取...
-
同じ配列またはクラスを、2回...
-
Javaで文字と数字が混ざったも...
-
ファイルから一行を読み込み配...
-
無名配列の作成方法について質問
-
Java:配列に配列を格納する方法
-
ファイルの読み込み、配列に格納
-
ArrayListからBean配列に値をセ...
-
JavaBeansの配列の値取得方法に...
-
n番目に大きな値を探索する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ページング
-
java
-
配列をセッションに割り当てた後で
-
この警告はどうすれば?
-
Javaで文字と数字が混ざったも...
-
javaで大容量テキストファイル...
-
セッションを使ったint型の値の...
-
C言語でunsigned char配列を連...
-
配列の中に複数存在する数がい...
-
Javaで文字を漢字であるか否か...
-
[Ljava.lang.Stringってなんですか
-
ArrayListからBean配列に値をセ...
-
C#で動的配列Listの中身をListB...
-
【C#】ハッシュテーブル(連想...
-
csvファイルを2次元配列に格納
-
配列で、値の入っている要素数...
-
『args[]』とは?
-
【Ajax通信&Java】配列の受け取...
-
データベースから取得したデー...
-
n番目に大きな値を探索する
おすすめ情報