Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Java: Росіяни букви і не тільки ...

Реферат Java: Росіяни букви і не тільки ...





нням включений перший режим, а для нормальної роботи з російською мовою необхідно використовувати ENCODING_UTF_16. Причому що найважливіше, цю установку необхідно виконувати для кожної, створюваної осередки. Приклад коду:

HSSFWorkbook wb = new HSSFWorkbook ();

HSSFSheet sheet = wb.createSheet ("Sheet1");

HSSFRow row = sheet.createRow ( (Short) 0);

for (int i = 0; i <10; i + +)

{p> HSSFCell cell = row.createCell ((short) i);

cell.setEncoding ((short) cell.ENCODING_UTF_16);

cell.setCellValue ("Тест російської мови");

}

Створити лист з назвою містить російські символи, на жаль, не вдається. Дане опис надіслав В'ячеслав Яковенко, за що йому окреме спасибі. p> CORBA p> У стандарті CORBA передбачений тип, відповідний Java-івської типу String. Це тип wstring. Все б добре, але деякі CORBA-сервера не підтримують його повною мірі. Типові виключення, що виникають при спотикання на російських буквах: org.omg.CORBA.MARSHAL: minor code 5 completed No або org.omg.CORBA.DATA_CONVERSION. Найкраще, звичайно, замінити CORBA-сервер. До жаль у мене немає статистики, тому я не можу сказати, з якими проблем не буде. Якщо змінити систему не представляється можливим, можна замість типу wstring використовувати тип string в парі з нашим улюбленим перетворенням:

// Серверна частина

a = new Answer (new String ( src.getBytes ("Cp1251"), "ISO-8859-1"));

...

// Клієнтська частина

Answer answer = serverRef.getAnswer ();

res = new String ( answer.msg.getBytes ("ISO-8859-1"), "Cp1251");

Тип wstring при цьому краще не використовувати, тому як тим самим Ви кривизна сервера будете компенсувати кривизна своїх компонентів, а це практично завжди чревате різноманітними проблемами в майбутньому. p> Замість Cp1251 можна використовувати будь-яке кодування російських букв, за бажанням. Це буде кодування, в якій будуть передаватися рядки в компоненти на інших мовах. Також, аналогічний код може знадобитися, якщо необхідно організувати зв'язок з готовими НЕ-Java компонентами, які вже використовували тип string. p> Чесно кажучи, не лежить у мене душа до таких рішень, ну так що поробиш, іноді воно єдине. p> JNI p> JNI (Java Native Interface) - це стандарт по взаємодії з C/C + +-ним кодом. Як і слід було очікувати, на цьому вододілі теж відбувається зіткнення байтів і символів. Більшість C/C + +-них програм пишеться без урахування Unicode, багато програмісти навіть не знають про нього. Я сам, за 7 років письменства на C/C + +, поки не почала писати на Java, про Unicode знав тільки з чуток. Більшість строкових операцій в C/C + + зроблені для 8-бітового сішного типу char. В принципі, є деякі зрушення в цьому напрямку, зокрема для Windows NT можна відкомпілювати код, який буде взаємодіяти з Unicode-варіантами Win32 API, але, на жаль, цього часто недостатньо. p> Таким чином головне завдання - отримати тип char * з типу jstring...


Назад | сторінка 12 з 19 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка термогенератора, який буде використовувати тепло двигуна для заряд ...
  • Реферат на тему: Призначення CORBA і її об'єктно-орієнтованих компонентів
  • Реферат на тему: Технологія CORBA і особливості проектування баз даних
  • Реферат на тему: Java: Засоби побудови звітів для Java-додатків
  • Реферат на тему: Основи мови програмування Java