FileReaderクラスのread()メソッドについての質問です。
import java.io.FileReader; public class Main { public static void main(String[] args) { FileReader fr = null; try { fr = new FileReader("sample.java"); int i = fr.read(); while (i != -1) { char c = (char) i; System.out.print(c); i = fr.read(); } } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); } finally { if (fr != null) { try { fr.close(); } catch (Exception e) { } } } } }
このコードでsample.javaの文字を出力することができますが、質問があります。
まず、
int i = fr.read();
とすることにより、一文字目を読み込んでいます。
次にwhile文の中で二文字目以降を読むことになっていますが、なぜ二文字目以降を読めるのでしょうか。
このコードのどこの部分が一文字目ではなく、二文字目にシフトさせるのかわかりません。
一体どうして二文字目以降を読むことができるのでしょうか。
回答お願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/13 01:05