Re: StringBuffer java.lang.OutOfMemoryError
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jean Pierre Daviau schreef:
You don't understand what the insert() method does. The
loop you have written will attempt to insert an infinite number
of "\r\n" pairs before the first comma in the buffer; you are
safe only if the buffer contains no commas at all.
Is there a way to do that?
Whit append()?
Please quote some context when replying to a message.
You have to increment the loop counter with the number of characters you
added, since you insert the linebreak (have a look at
System.getProperty(line.separator)) /before/ the comma, so it finds it
again. But probably you just want replace(int,char).
strbuf.setLength(strbuf.length()+1000);
What is this good for?
for (int j=0;j<strbuf.length() ;j++ )
{
if(strbuf.charAt(j) == ','){
strbuf.insert(j++, System.getProperty(line.separator));
}
}
or
for (int j=0;j<strbuf.length() ;j++ )
{
if(strbuf.charAt(j) == ','){
strbuf.replace(j, System.getProperty(line.separator));
}
}
Untested, you might need to change some minor stuff.
And oh, use brackets for if statements, even if they only contain one
expression.
HTH, H.
- --
Hendrik Maryns
http://tcl.sfs.uni-tuebingen.de/~hendrik/
==================
http://aouw.org
Ask smart questions, get good answers:
http://www.catb.org/~esr/faqs/smart-questions.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
iD8DBQFFgDC3e+7xMGD3itQRAux1AJ9od0x63YVgVIEADoF/x3btR+9+GQCfaaes
1R2Ldzd+3KcNIc+oiTc2GWc=
=6mBf
-----END PGP SIGNATURE-----