I’m trying to dump a large integer array (10 000 elements) into a text file but am encountering some problems. I’ve tried two different approaches and neither seems to be working. Below is the function I’ve written:
private static void writeToFile(String name, int[] a){
try {
FileWriter fw = new FileWriter(name);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("working");
for (int n: a){
bw.write(n + " ");
}
bw.close();
} catch (IOException e) {
System.err.print("Unable to write to file " + name+ ".");
e.printStackTrace();
}
}
The first thing I tried was creating a string in the for loop and then writing the whole string to the file. Neither method works and gives me the same results as follows:
- File is created but left blank
- Works fine for shorter arrays (~10 elements)
- Works fine if the space is a letter eg: bw.write(n + “a”)
Any idea what I’m doing wrong? Or is there an even easier way that I’m not seeing?
Thanks,
Civatrix
Can you explain how you’re viewing/reading in the file afterwards? Your code is basically fine as far as I can see (bar moving the close() to a finally block), and it really should make no difference whatsoever whether a space or other letter is added. But that might make a difference e.g. to a text editor, I suppose…?