遅刻の「言い訳」選手権

java.io.FileInputStreamのskip()メソッドを使ってファイルを読み飛ばしながら表示したいのですが上手くいきません。

データの内容は
abcdefg
ABCDEFG
1234567

結果は
defg
DEFG
4567

といった様に初めの三文字を読み飛ばしたいです。

A 回答 (3件)

どんなプログラムを作成したのか、補足していただけますか?


多分、こんな感じのプログラムになると思うのですが、そういう問題ではないのかもしれません。
import java.io.*;
public class Sample {
public static void main(String argv[]) throws IOException{
BufferedReader fin = new BufferedReader(new FileReader("data.txt"));
String aLine;

while(true){
fin.skip(3);
aLine = fin.readLine();
if(aLine == null) break;
System.out.println(aLine);
}
fin.close();
}
}
    • good
    • 0

>初めの三文字を読み飛ばしたいです


BufferedReaderを使って一行ずつ読み込んで頭の3文字をカットすればいいんじゃないですか?
skipを使うとbyte単位で飛ばすので文字単位にはなりませんよ。
    • good
    • 0

何がどううまくいかないのかわかりませんが、


skip()の戻り値を拾ってみたらどうですか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報