- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
for (int i = 0; i != nl.length(); i++)
{
out.write(nl.charAt(i));
}
for (int i = 0; i != footerStart.length(); i++)
{
out.write(footerStart.charAt(i));
}
for (int i = 0; i != type.length(); i++)
{
out.write(type.charAt(i));
}
for (int i = 0; i != footerTail.length(); i++)
{
out.write(footerTail.charAt(i));
}
for (int i = 0; i != nl.length(); i++)
{
out.write(nl.charAt(i));
}
Мда. О кодировках они, похоже, не слышали.
А через Charset походу не хотят конвертить из-за производительности. На каждую строку будет создаваться новый массив и все такое.
P.S. Ну хотя можно и один раз сконвертить, в статике.
И если это сделать в статике, то можно юзать версию write(), которая принимает byte[]. Будет намного шустрее, чем эти говноциклы ;)
Я ради интереса заглянул в сишную реализацию в gnupg, там код гораздо понятнее и вроде даже короче. по сути заново реализующий BufferedReader.
char[] и String - нельзя, полагается прогонять через Writer, чтобы в правильной кодировке писалось.