import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class TryOut {
public static void main(String args[]) throws IOException{
int inputQuestionnAireNum = 0;
int inputPostCode = 0;
int inputGender = 0;
int inputAge = 0;
int x=0;
Scanner input = new Scanner(System.in);
FileWriter fwrite = new FileWriter("tryout.txt", true);
BufferedWriter out = new BufferedWriter(fwrite);
boolean invalidNum = false;
do{
System.out.print("1 new entry or 0 print");
x = Integer.parseInt(input.nextLine());
if(x == 1)
//Questionnaire Number
System.out.print("Enter Questionnaire Number [ ] ");
inputQuestionnAireNum = Integer.parseInt(input.nextLine());
out.write("NumBER OF Q: "+inputQuestionnAireNum+", ");
//Postal code
System.out.print("Enter Postal Code [ ] ");
inputPostCode = Integer.parseInt(input.nextLine());
out.write("PostCode: "+inputPostCode+", ");
//Age
System.out.print("Enter Age [ ] ");
inputAge = Integer.parseInt(input.nextLine());
out.write("Age: "+inputAge+", ");
//Gender
System.out.print("Enter Gender '1' for Male and '2' for for female [ ] ");
inputGender = Integer.parseInt(input.nextLine());
out.write("Gender: "+inputGender+", \n");
out.close();
} while(x != 0);
}
}
Result:
1 new entry or 0 print1
Enter Questionnaire Number [ ] 2
Enter Postal Code [ ] 1
Enter Age [ ] 3
Enter Gender '1' for Male and '2' for for female [ ] 4
1 new entry or 0 print1
Enter Questionnaire Number [ ] 2
Exception in thread "main" java.io.IOException: Stream closed
at java.io.BufferedWriter.ensureOpen(BufferedWriter.java:98)
at java.io.BufferedWriter.write(BufferedWriter.java:203)
at java.io.Writer.write(Writer.java:126)
at TryOut.main(TryOut.java:31)
Hi, how can i open the file writer stream again for next entry after it is has been closed? if i do not close(); all my entry will not be recorded to the text file. how can i solve this ?
Edited by: metaroot on Feb 18, 2008 6:39 PM