Home » Java Codes

Java File I/O – Read Input From User and Write to File

13 February 2009 1,503 views One Comment

This code example takes input from user and write the contents of the input to a file for every time the user hits the enter key.
This is continued until the user types the word ‘finished’, then the program exists. A StringBuilder is used to check whether the word ‘finished’ has been typed in.

package com.javadb.examples;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;

/**
 *
 * @author www.javabout.com
 */

public class Main {

    public void readInputFromUser() {

        BufferedWriter bw = null;
        
        try {
            
            InputStream in = System.in;
            bw = new BufferedWriter(new FileWriter(“output.txt”));

            StringBuilder builder = new StringBuilder();
            int letter;

            while ((letter = in.read()) != -1) {

                bw.write((char)letter);
                bw.flush();

                builder.append((char) letter);

                if (builder.toString().endsWith(“finished”)) {
                    System.exit(0);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (bw != null) {
                try {
                    bw.close();
                } catch (IOException ex) {
                    ex.printStackTrace();
                }
            }
        }
    }

    public static void main(String[] args) {
        new Main().readInputFromUser();
    }
}


Tags: , , , , , , , , , , , , , , , , , , ,

One Comment »

  • Jack said:

    thank you very much..

Leave your response!

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>