Re: file output in java : Notepad gives weird results
Arne VajhQj wrote:
ankur wrote:
I used the following code to write output to a file.
FileOutputStream fout = new FileOutputStream(fname,true);
PrintStream ps = new PrintStream(fout);
Random r = new Random(10);
for(int i = 0 ; i <= r1-1; i++)
{
for (int j = 0 ; j <= c1-1; j++)
{
m1[i][j] = r.nextInt(10);
//System.out.println(m1[i][j]);
ps.print(m1[i][j]);
ps.printf("\n");
}
//ps.printf("\r");
}
ps.close();
fout.close();
}
with this code if I read the output file in notepad I get all junk
characters written out. Like this:
0V0?0V0?0?0?
But if I open this file in textpad the output is fine:
3
0
3
0
6
6
However if I uncomment
//ps.printf("\r");
Output in notepad is surprising. There are no new lines: 303066
But textpad is fine !
Apparently TextPad considers \n a line break while NotePad only
considers \r\n a line break.
....
Maybe NotePad is interpreting a \r followed by another character other
than \n as a weird character?
Note that the line termination problem can be fixed very easily by
replacing 'ps.printf("\r");' with 'ps.printf("%n");'.
Patricia