15.06.2014 / 18:02 |  | 
vl@volk    Пользователь  
   Сейчас: Offline 
 Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
   | Kalter,  DataInput.readUTF() - читаю строку формата UTF-8, записанную с помощью DataOutput.writeUTF(String val).  Построчно надо грузить вручную в JavaME, а в Java SE есть определенный класс, StrinReader, по-моему.
  __________________
   знает толк  | 
  15.06.2014 / 18:02 |  | 
PLUTONiUM    Пользователь  
   Сейчас: Offline 
 Имя: Nameless Откуда: Авалон Регистрация: 14.10.2012
   | Kalter (15.06.2014/17:48)Можно ли загрузить текст из файла построчно? Если я делаю так, то в консоли ничего не вижу:[code java]DataInputStream dis=new DataInputStream(getClass().getResourceAsStream("/text.txt"));try{ Охох. Тебе еще учить и учить Яву...
   | 
  15.06.2014 / 18:12 |  | 
PLUTONiUM    Пользователь  
   Сейчас: Offline 
 Имя: Nameless Откуда: Авалон Регистрация: 14.10.2012
   | vl@volk (15.06.2014/18:02)Kalter,  DataInput.readUTF() - читаю строку формата UTF-8, записанную с помощью DataOutput.writeUTF(String val). Построчно надо грузить вручную в JavaME, а в Java SE есть определенный класс, StrinReА если еще точнее: 1. Функция readUTF считывает два байта из потока DataInputStream, далее по тексту - первый байт b1, второй b2. 2. Эти два байта определяют длину строки, максимальная длина строки - 64 килобайт. Строка идет сразу за этими двумя байтами. 3. Функция readUTF - читает строку записанную функцией: DataOutputStream.writeUTF(String). 4. Длина строки -это b1 * 256 + b2 (в оригинальне функции используются битовые операции, но тут я для наглядности показал обычное умножение). Например b1=56, b2=202 - длина строки 14538 байт (56 * 256 + 202). 5. Функция считывает следующие байты, заданной длины первыми байтами.
   Изменено PLUTONiUM (15.06 / 18:15) (всего 6 раз) | 
  15.06.2014 / 18:18 |  | 
Kalter    Пользователь  
   Сейчас: Offline 
 Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
   | PLUTONiUM, почему? Я это быстро освою, просто столкнулся с этим впервые и немного не ожидал...
  __________________
   Homo homini penis est.  | 
  15.06.2014 / 18:23 |  | 
Kalter    Пользователь  
   Сейчас: Offline 
 Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
   | vl@volk (15.06.2014/18:02)Kalter,  DataInput.readUTF() - читаю строку формата UTF-8, записанную с помощью DataOutput.writeUTF(String val). Построчно надо грузить вручную в JavaME, а в Java SE есть определенный класс, StrinReСпасибо.
  __________________
   Homo homini penis est.  | 
  15.06.2014 / 18:24 |  | 
vl@volk    Пользователь  
   Сейчас: Offline 
 Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
   | PLUTONiUM,  Там ведь еще символы перекодируются в формат UTF-8
  __________________
   знает толк  Изменено vl@volk (15.06 / 18:24) (всего 1 раз) | 
  15.06.2014 / 18:30 |  | 
Kalter    Пользователь  
   Сейчас: Offline 
 Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
   | Блин, я всё головой бился... Кода просто преобразовать забыл. *facepalm*  __________________
   Homo homini penis est.  | 
  15.06.2014 / 18:58 |  | 
vl@volk    Пользователь  
   Сейчас: Offline 
 Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
   | Kalter,   public String readLine(InputStream is) {  
    StringBuffer sb = new StringBuffer();  
    int ch = is.read();  
    while (ch != -1 && ch != '\n') {  
        sb.append(ch);  
        ch = is.read();  
    }  
    return sb.toString();  
}  
 так лучше  __________________
   знает толк  | 
  15.06.2014 / 21:26 |  | 
PLUTONiUM    Пользователь  
   Сейчас: Offline 
 Имя: Nameless Откуда: Авалон Регистрация: 14.10.2012
   | vl@volk, Kalter'а больше интересовало почему функция readUTF не работает в его примере - я это ему объяснил. А про кодировку он меня не спрашивал    | 
  15.06.2014 / 21:34 |  | 
vl@volk    Пользователь  
   Сейчас: Offline 
 Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
   | Исправьте && на ||  PLUTNiUM, так к слову сказал
  __________________
   знает толк  |