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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какая кодировка в телефоне??? 
:(
    Опции темы
TyVik
Дата 25.1.2006, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 1.10.2005

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



В какой кодировке я получаю строку из TextField?
Написал простенькую прогу для отправки мыла. На компе всё работает идеально, однако только я пытаюсь отправить с телефона, как приходят только вопросы в теле письма.
По идее косяк с перекодировкой...

sent = "MIME-Version: 1.0"+CRLF;
writeLine (sent);
sent = "Content-Type: text/plain; charset=<Что здесь должно стоять?>" + CRLF;
writeLine (sent);
sent = "Content-Transfer-Encoding: 8bit"+CRLF;
writeLine (sent);
byte[] bodyb;
bodyb = body.getBytes();
out.write (bodyb,0,bodyb.length);
writeLine (CRLF);
PM MAIL   Вверх
z-END
Дата 25.1.2006, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



100% немогу, но сдается мне что там UTF


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
TyVik
Дата 25.1.2006, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 1.10.2005

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



Угу, это уже лучше... А функции перекодировки какие/нить есть?
PM MAIL   Вверх
javastic
Дата 25.1.2006, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



попробуй так:

Код

String body = new String("Всем привет!","windows-1251"); //или cyr1251, или win1251


если твой телефон не поддерживает такую кодировку то будет исключение.

есть также у класса DataOutputStream метод writeUTF правда нужно чтобы телефон поддерживал midp2.




--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
redrick
Дата 25.1.2006, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(TyVik @ 25.1.2006, 14:52 Найти цитируемый пост)

В какой кодировке я получаю строку из TextField?

в UTF16. Все строчки в Java в UTF16. Строку в другой кодировке ты можешь заиметь только если тебе дадут откудато байты и скажут, в какой они кодировке - эти байты и будут твоя "строка в другой кодировке".

Цитата(TyVik @ 25.1.2006, 14:52 Найти цитируемый пост)

sent = "Content-Transfer-Encoding: 8bit"+CRLF;

типа данные в этом HTTP(?) запросе в 8-битной, или что этот заголовок значит ?

Цитата(javastic @ 25.1.2006, 16:55 Найти цитируемый пост)


String body = new String("Всем привет!","windows-1251"); //или cyr1251, или win1251

javastic, а где ты нарыл такой конструктор ?


--------------------
Имею Мнение Хрен Оспоришь   
PM MAIL ICQ   Вверх
javastic
Дата 26.1.2006, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Midp 2.0
Код

String(byte[] bytes, String enc) 
          Construct a new String by converting the specified array of bytes using the specified character encoding.


Сори, немного опечатался. smile


Это сообщение отредактировал(а) javastic - 26.1.2006, 11:37


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
Dancer
Дата 26.1.2006, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



скорее всего он имел ввиду вот это:
Код


String body = new String(new String("Всем привет!").getBytes(),"windows-1251"); //или cyr1251, или win1251

Добавлено @ 12:02
javastic не успеваю я сегодня за тобой smile


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
javastic
Дата 26.1.2006, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Я дарю тебе первенство! smile


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

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

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


 




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


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

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