Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Кодировка в JBuilder / 12 сообщений из 12, страница 1 из 1
11.10.2005, 20:13
    #33318439
Sherst
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
Привет всем!
Написал прогу по работе с БД(Database+QueryDataSet+jbdTable) в JBuilder7,но
возникла проблема кодировки.Сделал настройки Project-> Properties->General->Encoding:Cp1251
Таблица InterBase выглядит так:
автор
CREATE TABLE "Clients"
(
"NAME1" VARCHAR(40) CHARACTER SET WIN1251 NOT NULL,
"NAME2" VARCHAR(40) CHARACTER SET WIN1251 NOT NULL,
PRIMARY KEY ("NAME1")
);

Что можете посоветовать?
Заранее спасибо.
...
Рейтинг: 0 / 0
13.10.2005, 14:20
    #33322704
Кодировка в JBuilder
вообще не понятен вопрос - в чем конкретно проблемма - русские буквы превращаются в плюсики? где -после сохранения в базу?

можетете поиграться с кодировкой, выставив нужную вам

String Hello ="Привет";
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
...
Рейтинг: 0 / 0
13.10.2005, 14:25
    #33322720
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
Просто так....String Hello ="Привет";
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
а можно пояснить - что делает метод getBytes с такими параметрами?
...
Рейтинг: 0 / 0
13.10.2005, 16:09
    #33323155
Кодировка в JBuilder
А.Грасоff™ Просто так....String Hello ="Привет";
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
а можно пояснить - что делает метод getBytes с такими параметрами?

чувствую вопрос с подвохом :)
Отвечаю:
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
Т.е я беру байты в соответствии с кодовой страницей Cp1251 и перекодирую в ISO-8859-1.
...
Рейтинг: 0 / 0
13.10.2005, 17:21
    #33323397
Sherst
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
to Просто так....

Да.После сохранения записи в БД русские буквы превращаются в иероглифы.
Попробую использовать ваш совет.
...
Рейтинг: 0 / 0
13.10.2005, 17:23
    #33323404
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
Просто так.... А.Грасоff™ Просто так....String Hello ="Привет";
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
а можно пояснить - что делает метод getBytes с такими параметрами?

чувствую вопрос с подвохом :)
Отвечаю:
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
Т.е я беру байты в соответствии с кодовой страницей Cp1251 и перекодирую в ISO-8859-1.:) спасибо
...
Рейтинг: 0 / 0
13.10.2005, 18:35
    #33323631
Кодировка в JBuilder
А.Грасоff™ Просто так.... А.Грасоff™ Просто так....String Hello ="Привет";
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
а можно пояснить - что делает метод getBytes с такими параметрами?

чувствую вопрос с подвохом :)
Отвечаю:
Hello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")
Т.е я беру байты в соответствии с кодовой страницей Cp1251 и перекодирую в ISO-8859-1.:) спасибо

а я ждал подвоха...
:)
У меня был бин для jsp в котором я написал русскими буквами "привет", в jsp стояла кодировка ISO-8859-1, так вот, при просмотре этой jsp в браузере я видел вопросики ??????. Я тогда не знал что в опциях проекта (JBuilder) можно выбрать нужную кодировку- там стояла кодировка по умолчанию(не ISO-8859-1)
вот и пришлось извращаться так с getBytes
...
Рейтинг: 0 / 0
14.10.2005, 14:52
    #33325351
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
авторHello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")

ужас ... никогда так не делайте.
...
Рейтинг: 0 / 0
14.10.2005, 15:19
    #33325453
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
wessen авторHello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")

никогда так не делайте.почему?
...
Рейтинг: 0 / 0
14.10.2005, 15:24
    #33325476
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
А.Грасоff™ wessen авторHello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")

никогда так не делайте.почему?
так это же бред полнейший :)
...
Рейтинг: 0 / 0
14.10.2005, 16:13
    #33325676
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
wessen А.Грасоff™ wessen авторHello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")

никогда так не делайте.почему?
так это же бред полнейший :)это пример и объяснение как именно работает указанная конструкция.
...
Рейтинг: 0 / 0
14.10.2005, 16:34
    #33325750
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в JBuilder
А.Грасоff™ wessen А.Грасоff™ wessen авторHello = new String(Hello.getBytes("Cp1251"),"ISO-8859-1")

никогда так не делайте.почему?
так это же бред полнейший :)это пример и объяснение как именно работает указанная конструкция.

такая конструкция используется, когда кто-то накосячил при создании строки. Вот хорошо всем известный пример, как боротся с кракозябами пришедшими из формы в сервлет:

String Name = new String(request.getParameter("Name").getBytes("ISO-8859-1"),"Cp1251");

томкат перевел массив байтов в юникод(тип String), считая, что байты в кодировке ISO-8859-1, а это неправильно. Вызовом метода getBytes("ISO-8859-1"), мы получаем исходный(правильный) массив байтов и создаем из этого массива новую строку, но уже указываем правильную кодировку "Cp1251".
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Кодировка в JBuilder / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]