devxlogo

Appending to a File

Appending to a File

Question:
How can I append to a file in Java?The file is ASCII. It exists. The program hasrights to the file. I just need to add to the endof the file.

Answer:
You need to use Java’s RandomAccessFile class to accomplish this.Once you open a file with read and write permissions, you cansimply seek to the end position of the file and write your datafrom that point using one of the various write methods availablein that class:

       public void write(byte  b[]);       public void write(byte  b[], int  off, int  len);       public void write(int  b);       public final void writeBoolean(boolean  v);       public final void writeByte(int  v);       public final void writeBytes(String  s);       public final void writeChar(int  v);       public final void writeChars(String  s);       public final void writeDouble(double  v);       public final void writeFloat(float  v);       public final void writeInt(int  v);       public final void writeLong(long  v);       public final void writeShort(int  v);       public final void writeUTF(String  str);
For example, the following program appends a string from the command lineto the end of a file:
——————- FileAppend.java —————–import java.io.*;public class FileAppend {       //       // Defining a main() routine allows the program to be       // run as a standalone java application       //       public static void main(String argv[]) {               if (argv.length != 2) {                       System.out.println(“Usage: FileAppend string outfile”);                       System.exit(1);               }               RandomAccessFile output = null;               try {                       // Open the file for reading and writing                       output = new RandomAccessFile(argv[1], “rw”);               } catch (Exception e) {                       System.out.println(“Couldn’t open ” + argv[1]);                       System.exit(1);               }               try {                       // seek to the end of the file                       output.seek(output.length());                       // perform the write operation                       output.writeChars(argv[0] + ”
” ); } catch (Exception e) { System.out.println(“Error appending to file”); System.exit(1); } }}

See also  Why ChatGPT Is So Important Today
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist