Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > русские буквы и RandomAccessFile


Автор: tipoc 16.8.2004, 13:11
Как корректно считать русские буквы из файла с помощью RandomAccessFile?
Пробовал методы readLine(),readChar(),readByte(),readUTF(),все как-то криво.
Можно ли вообще с помощью этого класса корректно считать русские буквы?

Автор: ElectricalStorm 16.8.2004, 13:43
буфер можно декодировать
вот отрывок из кода

Код

   private static Charset charset;
   private static CharsetDecoder decoder;

   static
   {
       charset = Charset.forName("cp1251");
       decoder = charset.newDecoder();
   }

   CharBuffer charbuffer = decoder.decode(mappedbytebuffer);

Автор: tipoc 21.8.2004, 19:36
Блин,у меня че то выдает одни прямоугольники(наподобие нулей).

в классе RandomAccessFile читаю методом read()(в цикле) и заношу в буфер методом put(byte b),а при выходе из цикла делаю,как вы написали.Файл записан в кодировке cp1251(это точно).

Может как-нить по-другому можно сделать?

Автор: DarkDS 22.8.2004, 01:09
Может это как нибудь поможет?
http://people.comita.spb.ru/users/sergeya/java/ruschars.html

Автор: tipoc 22.8.2004, 13:28
Да я эту статью два раза читал,понту от нее мало(там в основном описаны баги и возможности старой java - 1.1,1.2,1.3) smile.gif

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)