Practical Coding in Java

Learn to write and validate your own code

Darren Kessner, PhD

(revised January 9, 2026)

Previous: 14. File IO

HelloFile

//
// HelloFile.java
//


import java.io.*;
import java.util.*;
import processing.core.*;


public class HelloFile
{
    public static void writeData(String filename)
    {
        try
        {
            System.out.println("Writing data with PrintWriter\n");
            PrintWriter writer = new PrintWriter("high_scores.txt");
            writer.println("DrKessner 1234");
            writer.println("Gadget 2345");
            writer.println("Tux 3456");
            writer.close();
        }
        catch (Exception e)
        {
            System.out.println(e);
        }
    }

    public static void readDataJava(String filename)
    {
        try {
            System.out.println("Reading data with File and Scanner");
            File f = new File(filename); 
            Scanner s = new Scanner(f);
       
            while (s.hasNext())
            {
                String line = s.nextLine();
                System.out.println(line);
            }

            System.out.println();
        }
        catch (Exception e)
        {
            System.out.println(e);
        }
    }

    public static void readDataProcessing(String filename)
    {
        System.out.println("Reading data with Processing loadStrings()");

        // instantiate a dummy PApplet object
        // (not necessary for Processing applications)

        PApplet p = new PApplet();
        p.sketchPath(".");
        p.setup();

        // call loadStrings()

        String[] lines = p.loadStrings(filename);

        for (String line : lines)
            System.out.println(line);

        System.out.println();
    }

    public static void main(String[] args)
    {
        String filename = "high_scores.txt";

        writeData(filename);

        readDataJava(filename);
        readDataProcessing(filename);
    }
}

Output:

Writing data with PrintWriter

Reading data with File and Scanner
DrKessner 1234
Gadget 2345
Tux 3456

Reading data with Processing loadStrings()
DrKessner 1234
Gadget 2345
Tux 3456

Next: