[175] ファイルについて
投稿者:神奈川
2007/02/20 02:13:25
>「飲み会以外では飲まない」という軟弱な断酒中ですが、木曜の晩は飲み会で、
>日付が変わる頃帰宅して風呂に入って、朝の5:00頃目がさめました。風呂の中で。
>というわけで昨晩も帰宅後即寝てしまったので返事が遅れましてすみません。
いえいえ,こちらこそお世話になっているので、ありがとうございます。解決できました。
ふぃよかったです。
件名を変更しました。
今度は、txtファイルの読み込みと書き込みについて質問なんですが、
一つ目の質問です。
******aaa.txt******
ねこ
こねこ
いぬ
哺乳類
爬虫類
とかげ
*******************
この場合4行目のみ読み取るためにはどうすればよいのでしょうか?
ちなみに
//文字ストリーム作成
br=new BufferedReader (
new InputStreamReader (
new FileInputStream( "aaa.txt" ), "SJIS" ) );
//読み込み、ついでにreadLine()は、1行ずつ見る。1回目とおれば、1行目2回通れば2行目
String AAA=br.readLine()
String BBB=br.readLine()
この場合、AAAは、1行目の「ねこ」がはいります。
BBBには、2行目の「こねこ」がはいります。
4回ループを起してから抽出する事は可能ですが、
最初2行目
次4行目
次1行目
を読み取るとなると、readLine()は、よくわからないけど1行目ずつ格納してしまうので
4行目の次に1行目を見るというのは、どうも難しいような気がwします。
何か、行数を指定してその行を読み取るメソッドは、あるでしょうか?
無い場合は、行数を初期化(1行目から)すればいいんでしょうが、どうすればいいのかわかりません・・
二つ目の質問です。
やりたいことは、書き込みと読み込みを同じファイルから行いたいことです。
それを踏まえた上で、
例えばaaa.txtにたいして最初に1:ネコという書き込みがされ
1ステップ(書き込み)
******aaa.txt******
1:ねこ
*******************
2ステップ(1行目読み込み)
3ステップ(書き込み)
******aaa.txt******
1:ねこ
1-1:こねこ
1-2:いぬ
*******************
4ステップ(2行目読み込み)
5ステップ(書き込み)
******aaa.txt******
1:ねこ
1-1:こねこ
1-2:いぬ
1-1-2:哺乳類
1-1-3:爬虫類
1-1-4:とかげ
*******************
6ステップ(3行目読み込み)
7ステップ(書き込み内容なし)
と繰り返し
最後(読み込んだ文字列=null)になって終了
というふうにしたいのです。
書き込んでいる最中に読み込めるのでしょうか?
この場合、読み込みの後に別の処理があるのですが、これについては
できていて、文字列が入力されると0~複数の文字列が出力される。という感じです。