Hello here is a simple java program for file Handling. Here first we store the "java Programming" string into a file named "hi.txt" then we read the "hi.txt" and write it to another file "hello.txt" as well as display in the standard output. Then we read from Standard input and insert it into namaste.txt
Here is the code.
We need to declare the variables (6,7,8) outside the try catch block as we need to close them in the finally block if they are used.
We iterate through the String to get each char to write in file (line 14), message.charAt(2) will return the char at index 2 of that String.
(Line 24) we must close the opened file. check it is not null before closing so it won't generate another exception (no file opened to close)
(Line 32) Type casting from int to char.
(Line 49) input.read() waits till users enter a char in the Terminal.
Thank you! Have a good day!
Here is the code.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | import java.io.*;
public class FileHandler {
public static void main(String args[]) throws IOException{
System.out.println("Here");
FileReader reader = null;
FileWriter writer = null;
InputStreamReader input = null;
String message = "Java Programming";
try {
writer = new FileWriter("hi.txt");
int i = 0;
for(i = 0; i<message.length(); i++) {
//System.out.println(message.charAt(i));
int charInt = (int) message.charAt(i);
writer.write(charInt);
}
} catch(Exception e){
//handle the exception
e.printStackTrace();
} finally {
//Always close reader or writer
if(writer != null) // prevent another exception
writer.close();
}
try {
reader = new FileReader("hi.txt");
writer = new FileWriter("hello.txt");
int c;
while((c = reader.read()) != -1) {
char intChar = (char) c;
System.out.print(intChar);
writer.write(c);
}
System.out.println();
} finally {
if(reader != null)
reader.close();
if(writer != null)
writer.close();
}
try {
input = new InputStreamReader(System.in);
writer = new FileWriter("namaste.txt");// greeting
char c;
System.out.println("Enter q to quite.");
do {
c = (char) input.read();
if (c != 'q') { // won't store q
writer.write(c);
}
} while (c != 'q');
} finally {
if(input != null)
input.close();
if(writer != null)
writer.close();
}
}
}
|
We need to declare the variables (6,7,8) outside the try catch block as we need to close them in the finally block if they are used.
We iterate through the String to get each char to write in file (line 14), message.charAt(2) will return the char at index 2 of that String.
(Line 24) we must close the opened file. check it is not null before closing so it won't generate another exception (no file opened to close)
(Line 32) Type casting from int to char.
(Line 49) input.read() waits till users enter a char in the Terminal.
Thank you! Have a good day!