Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 15.10.2008, 18:36   #1
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Конвертирование кодировки utf для отображk

Ктото знает как utf кодировку перекодировать в родную телефона, чтоб она нормально отображалась в форме
вот пример текста (Чувствуешь, кто-то нежно целует твои РіСѓР±С‹ - это СЏ нежно целую тебя перед СЃРЅРѕРј. РЎРїРѕРєРѕР№РЅРѕР№ ночи!
*)

Последний раз редактировалось Kurdt, 15.10.2008 в 18:50.
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 02:08   #2
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Конвертирование кодировки utf для отобра

http://forum.boolean.name/showthread.php?t=6856
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 14:02   #3
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

Спс, щас поробую
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 14:50   #4
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

а как передать не ресурс а сроку?
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 15:52   #5
beZ_probleM
ПроЭктировщик
 
Регистрация: 31.03.2008
Сообщений: 134
Написано 8 полезных сообщений
(для 8 пользователей)
Ответ: Конвертирование кодировки utf для отобра

Function StrToUtf8(s: string;): string; // Корректирует русскую кодировку в строках взятых из ресурсов...
var i, c: integer; ch: char; ss: string;
begin
	if (pos(s,chr(65488))<>-1) or (pos(s,chr(65489))<>-1) then begin // если строка содержит русские симовлы, то
		for i:=1 to Length(s) do begin // перебираем строку
			ch:=GetChar(s,i-1); c:=ord(ch);	// берем по байтику
			if c=65488 then begin				// если байт равен 65488, то следующий байт отвечает за русскую букву
				ss:=ss+CHR(ord(GetChar(s,i))-64384);	// находим русскую букву и запоминаем
				i:=i+1;																// это чтобы мы перешли на следующую букву, а не брали следующий байт
			end
			else begin
				if c=65489 then begin						// то же самое но с другим байт-кодом
					ss:=ss+chr(ord(GetChar(s,i))-64320);
					i:=i+1;
				end
				else ss:=ss+ch;										// если это не русская буква, то просто ее добавим
			end;
		end;
		StrToUtf8:=ss;							// возвращаем откорректированный текст
	end
	else StrToUtf8:=s;			// если строка не содержала русских букв, то просто ее и возвратим...
end;

...

var str:string;
...

str:=StrToUtf8(тут твоя строка);

у меня работает
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 16:39   #6
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

у меня не рабоатет (
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 17:03   #7
beZ_probleM
ПроЭктировщик
 
Регистрация: 31.03.2008
Сообщений: 134
Написано 8 полезных сообщений
(для 8 пользователей)
Ответ: Конвертирование кодировки utf для отобра

оно работает когда текст в формате UTF-8
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 17:32   #8
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

Чувствуешь, кто-то нежно целует твои губы - это я нежно целую тебя перед сном. Спокойной ночи!

это утф 8 но он никак не реагирует...
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 17:51   #9
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Конвертирование кодировки utf для отобра

Вроде как UTF и UTF-8 разные кодировки, перекодировать нужно. Kurdt, приложи файл в UTF, попробую разобраться, как его перекодировать.
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 21:58   #10
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&#107

вот http://webfile.ru/2319205
почемуто вложения не работают
(Offline)
 
Ответить с цитированием
Старый 16.10.2008, 23:48   #11
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Конвертирование кодировки utf для отобра

UTF - это, как я понимаю, семейство кодировок. Туда входят UTF-8, UTF-16 и другие. Моя функция преобразует считанный из ресурса текст в UTF-8 в UNICODE, который можно отображать в Java. Перекодируются все возможные символы, любого языка, которые только может отобразить UNICODE/UTF-8 (даже значки всякие прикольные, вот только главное, чтобы тел их поддерживал, но если не поддерживает, то конвертация всё равно произойдёт, просто тел отобразит такие символы как квадратики или точки). НО! Если в тексте ресурса, который скармливаем моей функции находится хотя бы один символ, который закодирован НЕ В UTF-8, то функция возвращает пустую строку (можно исправить это, чтобы просто пропускала, например, такие символы, но я себе цель ставил просто побыстрее написать и затестить, будет ли работать).
beZ_probleM, твоя функция, как я понял, конвертирует из UTF-8 только узкий диапазон символов, в который входят русские буквы. А моя перекодирует полный диапазон всех символов (горжуся собой, гг). =)
а как передать не ресурс а сроку?
Сроки, тьфу ты, то есть сТроки в Java сразу принимают вид юникода. То есть если ты присвоишь строке что-то подобное:
Чувствуешь, кто-то нежно целует твои губы - это я нежно целую тебя перед сном. Спокойной ночи!
, то каждый из байтов примет вид юникода. Перекодировку нужно делать именно при чтении из ресурса или интернета, или файла из файловой системы. Но как запихуть в исходник, например, строку юникодную, в которой есть разные национальные символы - я сам не знаю. Точнее знаю, но вам этот способ не понравится. Например так (код на Java):
String s = (char)0x1040+(char)0x1041+(char)0x1042
Создастся строка из трёх символов UNICODE с соответствующими кодами. Целые тексты так набирать не очень удобно, поэтому, если кто-то знает, как в исходник скормить UNICODE, то объясните. На скорость и размер кода это никак не влияет, так как при компиляции любая заданная строка в конечном классе принимает вид юникода. Неважно, явно мы написали что-то вроде:
String s "Привет!!! =)"
или по кодам символов, как я написал выше.
(Offline)
 
Ответить с цитированием
Старый 17.10.2008, 12:55   #12
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

я загружаю с интерента строку и у меня там вместо текста вот такие крякозяблы выдает
Чувствуешь, кто-то нежно С

тоесть автоматически не переводит, почему ? Может в начало строки нада чтото вставить?
(Offline)
 
Ответить с цитированием
Старый 17.10.2008, 13:45   #13
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Конвертирование кодировки utf для отобра

Через мою функцию пропускаешь? Если нет, токрякозябры и будут.
(Offline)
 
Ответить с цитированием
Старый 17.10.2008, 17:43   #14
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Конвертирование кодировки utf для отображ&

Это 2 байтный уникод
(Offline)
 
Ответить с цитированием
Старый 17.10.2008, 22:55   #15
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Re: Конвертирование кодировки utf для отображ&

Сообщение от Kurdt Посмотреть сообщение
Это 2 байтный уникод
Не обязательно, в инете кодировка может быть какая угодно (ISO, KOI, WIN-1251, UTF).
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Во сколько оценивается создание интерне& Nunan Болтовня 3 28.10.2008 14:33
Все статьи, уроки,дополнения, ошибки компl anton_obuhov Основной форум 3 14.09.2008 13:11
Работа нескольких программ в одной anton_obuhov Основной форум 4 10.09.2008 11:15
куплю исходник военной стратегии на blitz3d эд Blitz3D 15 18.02.2008 15:50
А вот и ещё тема по текстурированию ландшk CRASHER Создание текстур 4 16.01.2008 18:10


Часовой пояс GMT +4, время: 13:26.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com