Solved

appending data in a file

Posted on 2003-11-13
8
588 Views
Last Modified: 2010-03-31
Hello people
Well i want to periodically write to a file basically its a log file that is constantly updated from time to time but i dont want the file to be overwritten rather i want to update the file like each time the file is opened for the WRITE operation i should start from the end of FILE and then write the DATA in other words i want to APPEND data to this file is there any way i can do that in JAVA please help me out

Thanks in advance
Asif Iqbal
0
Comment
Question by:asifiqbal2k
  • 3
  • 2
  • 2
  • +1
8 Comments
 
LVL 7

Expert Comment

by:grim_toaster
ID: 9745824
I would suggest looking into the API documents as the first port of call, in particular the java.io package.

The class FileWriter is probably the one you're after, but look into the API's for full details, as learning how to read the API's is one of the most important things you can do!  And you should have a general knowledge of certain areas, i.e. java.util, java.lang and java.io, I'm sure there are other important areas also, but these are a good starting point.
0
 
LVL 2

Expert Comment

by:Tols
ID: 9745828
Appending to a file can be done this way (I use this in my own logging library):

BufferedWriter logWriter = new BufferedWriter(file, true);
logWriter.write(buf);
logWriter.close();
0
 
LVL 2

Accepted Solution

by:
Tols earned 20 total points
ID: 9745829
A little correction:
BufferedWriter logWriter = new BufferedWriter(new FileWriter(file, true));
0
Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

 

Author Comment

by:asifiqbal2k
ID: 9745856
Hello people
Well i want to periodically write to a file basically its a log file that is constantly updated from time to time but i dont want the file to be overwritten rather i want to update the file like each time the file is opened for the WRITE operation i should start from the end of FILE and then write the DATA in other words i want to APPEND data to this file is there any way i can do that in JAVA please help me out

Thanks in advance
Asif Iqbal
0
 
LVL 5

Expert Comment

by:lwinkenb
ID: 9745909
Tols comment correctly answers your question.
BufferedWriter logWriter = new BufferedWriter(new FileWriter(file, true));
0
 
LVL 5

Expert Comment

by:lwinkenb
ID: 9745910
The true parameter pasted to the FileWriter means you are opening the file to append.
0
 

Author Comment

by:asifiqbal2k
ID: 9754272
well ok now one more problem now what i want to do is write data to file by specifying a position like i want to write DATA to a particular location in the FILE is there any way to that.
0
 
LVL 5

Expert Comment

by:lwinkenb
ID: 9754987
Only if you want to overwrite the data that's already there.  There is no way to insert data at a particular point without overwriting data though.  What you need to do is read the entire file contents into memory (into a String or a StringBuffer), then insert the text you want into the string or string buffer.  Then write that back onto the file.
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java had always been an easily readable and understandable language.  Some relatively recent changes in the language seem to be changing this pretty fast, and anyone that had not seen any Java code for the last 5 years will possibly have issues unde…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.

822 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question