Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перекодировка, русские символы отображаются иероглифами 
V
    Опции темы
X-Vlad
  Дата 21.5.2010, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 570
Регистрация: 10.4.2002
Где: Украина, Львов

Репутация: нет
Всего: 5



Всем привет,

Начинаю изучать Java ME. 
Мне нужно стянуть информацию с заданого урла и показать на экране. 
Информацию стягиваю но на мобиле и эмуле отображаются крякозяблы smile
Проблема с русскими буквами.

Помогите плз. 

"http://localhost/project1.exe/getnames" возвращает "Иванов;Сидоров;Петров..."

Код

  HttpConnection connection = null;
                InputStream inputstream = null;
                String result = "";

                try { 
                    connection = (HttpConnection) Connector.open("http://localhost/project1.exe/getnames");
                    //HTTP Request
                    connection.setRequestMethod(HttpConnection.GET);
                    connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
                    connection.setRequestProperty("Connection", "close");

                    if (connection.getResponseCode() == HttpConnection.HTTP_OK) {
                        inputstream = connection.openInputStream();
                        int length = (int) connection.getLength();
                        if (length != -1) {
                            byte incomingData[] = new byte[length];
                            inputstream.read(incomingData);
                            result = new String(incomingData);
                            ParseResult(result, ";");
                        } else {
                            ByteArrayOutputStream bytestream = new ByteArrayOutputStream();
                            int ch;
                            while ((ch = inputstream.read()) != -1) {
                                bytestream.write(ch);
                            }
                            result = new String(bytestream.toByteArray());
                            bytestream.close();
                            ParseResult(result, ";");
                        }
                        System.out.println(result);
                    }
                }
                catch(IOException error) {
                    System.out.println("Caught IOException: " + error.toString());
                    }



--------------------
Хорошая штука - комп..:)
www.x-vlad.com
PM MAIL WWW ICQ   Вверх
ivanovpv
Дата 21.5.2010, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Варвар
**


Профиль
Группа: Участник
Сообщений: 639
Регистрация: 26.1.2005
Где: Москва

Репутация: 10
Всего: 28



Проблема здесь:
Код

 result = new String(incomingData);


Такой конструктор для перекодировки строки из массива байтов берет текущую локаль телефона. Надо подставить ту локаль которая использовалась при начальной перекодировке строки в массив байтов: 
Код

 result = new String(incomingData, charset);


Это сообщение отредактировал(а) ivanovpv - 21.5.2010, 13:54


--------------------
Aut viam inveniam aut faciam
PM MAIL Skype   Вверх
X-Vlad
Дата 21.5.2010, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 570
Регистрация: 10.4.2002
Где: Украина, Львов

Репутация: нет
Всего: 5



Спасибо. smile

Это сообщение отредактировал(а) X-Vlad - 21.5.2010, 14:08


--------------------
Хорошая штука - комп..:)
www.x-vlad.com
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0557 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.