2011年9月2日金曜日

Javaの私的まとめ14

Javaのお勉強その14

  1. 表示
    String a = "small";
    String A = "large";
    System.out.printf("a = %2$s, A = %1$s",A,a);
    とすると、a = small, A = largeと表示される。番号$は省略できるが、その場合は埋め込む文字の順序は変更できない。後ろにつけたものから順に埋められる。

    printfの書式をいくつか示す。

    printfの書式(フラグ)
    - 左揃えにする
    + 符号をつける
    0 空きを0で埋める
    , コンマ区切りを使う
    ( 負の値をかっこで囲む
  2. File

    java.io.Fileはファイルやディレクトリ(!)を表すクラスである。

    Fileオブジェクトはいくつかのコンストラクタを持つ。

    File(String name)
    File(String dir, String name)
    File(File dir, String name)

    Fileオブジェクトを生成してもファイルはすぐに作成できない。createNewFile()でファイルを作成する。ただし、ファイルが生成できない場合はjava.io.IOExceptionがスローされる。

  3. ReaderとWriter

    java.io.Readerとjava.io.Writerは文字の入出力に使うためのクラスである。

    FileReader/Writerはファイルの入出力に使う。

    BufferedReader/Writerはバッファを使い、効率よく入出力を行う。BufferedReader/WriterはReader、Writer(入出力のためのクラス)から生成できる。

    Print.Writerは文字・文字列の入出力に使う。System.outのクラスである。File、Writer、Stringなどから生成できる。

    Reader、Writerのメソッド(失敗時にIOExceptionが投げられる)
    int read() 文字を1文字読みだして戻す
    void write(char c) cを書き込む
    void write(String s) sを書き込む
    void flush() フラッシュする
    void close() 閉じる
    閉じる

    BufferedReaderはString readLine()という文字列を1行読み込んで返すメソッドを持っている。

    BufferedWriterはvoid newLine()という文字列を1行書き込むメソッドを持っている。

    import java.io.*;
    class file{
     // IOExceptionを投げると書かないとコンパイルエラーになるよ。
     // readLineメソッドなどは例外を投げる可能性があるので。
     public static void main(String[] args)throws IOException{
      File f = new File("test.txt");
      PrintWriter pw = new PrintWriter(f);
      pw.write('x'); // 書き込み
      pw.println("hello"); // これも書き込み
      pw.flush();
      pw.close();
      // ReaderからBufferedReaderを生成する。
      BufferedReader br = new BufferedReader(new FileReader(f));
      System.out.println(br.readLine());
     }
    }

0 件のコメント:

コメントを投稿

フォロワー

ブログ アーカイブ

ページビューの合計