programmera.net -> java -> normal     för utskrift      info@programmera.net

Textfiler i Java

1. Läsa en textfil

1. Läsa en textfil

Med programmet MyFileReader kan vi läsa en textfil rad för rad och skriva ut den till skärmen:

import java.io.BufferedReader;
import java.io.FileReader;

/**
 * This program reads a text file line by line and print to the console.
 */
public class MyFileReader {

  public static void main(String[] args) {

    System.out.println("====================================");
    System.out.println("Main 1. Check parameter");
    System.out.println("====================================");

    // First chech nr of args.
    if (args.length != 1){
        System.err.println ("Usage: java FileReader file_path");
        System.exit(2);
    }
    String path=args[0];

    try{
      // Open the file
      FileReader fr = new FileReader(path);
      // Buffer the Reader
      BufferedReader br = new BufferedReader(fr);

      System.out.println("====================================");
      System.out.println("Main 2. Print file contents");
      System.out.println("====================================");

      String s;
      while ((s = br.readLine()) != null)   {
        System.out.println (s);
      }

      //Close the file
      br.close();
      fr.close();

      System.out.println("====================================");
      System.out.println("Main 3. All done");
      System.out.println("====================================");

      }catch (Exception e){
        System.err.println("Error: " + e.getMessage());
      }
    }
}
När vi kör programmet med textfilen a.txt ser vi följande utskrift:
[olle@dev1]$  java MyFileReader a.txt
====================================
Main 1. Check parameter
====================================
====================================
Main 2. Print file contents
====================================
Hej alla..
Detta är rad 2
====================================
Main 3. All done
====================================
Verkar funka.