Русский текст
Как сделать так, чтобы программа сохраняла русский текст который вводит пользователь. Я сделал но она русские буквы заменяет на знаки вопроса. Можно сохранять только англиские буквы.:"(
|
Re: Русский текст
Можно записывать коды символов разделяя их знаком "%".
Например строка "текст" закодируется как 226%165%170%225%226%. Геморойно конечно, но сработает. З.Ы. Код символа можно получить с помощю функции ord, символ из кода-с помощю chr. |
Re: Русский текст
Та же проблема. Пытаюсь сохранить русскую строку в RecordStore - записываются только символы ? по числу букв. Конвертирование в Win1251 не помогает. Кто нибудь сталкивался с такой проблемой? Как решали? Видимо, придется в транслите хранить...
|
Re: Русский текст
тоже долго мучился с этой проблемой вот пока искал как сделать сам допер с кодированием))
/////////////////////раскодируем function ruen(st:string):string; var st1,st2:string; i,l,l2:integer; begin st1:=''; st2:=''; l:=length(st); for i:=0 to l-1 do begin if getchar(st,i)<>'%' then st2:=st2+getchar(st,i) else begin st1:=st1+chr(stringtointeger(st2)); st2:=''; end; end; ruen:=st1; end; //////////////////////////////////кодируем function enru(st:string):string; var st1,st2:string; i,l,l2:integer; begin st1:=''; st2:=''; l:=length(st); for i:=0 to l-1 do begin st1:=st1+integertostring(ord(getchar(st,i)))+'%'; end; enru:=st1; end; |
Re: Русский текст
function winstr (s:string):string;
var i:integer; c: char; tc:integer; st:string; begin st:=''; for i:=0 to length(s)-1 do begin c:=getchar(s,i); tc:=ord(c)-848; if (tc>191) and (tc<256) then st:=st+chr(tc) else st:=st+c; end; winstr:=st; end; function utfstr (s:string):string; var i:integer; c: char; tc:integer; st:string; begin st:=''; for i:=0 to length(s)-1 do begin c:=getchar(s,i); tc:=ord(c)+848; if (tc>1039) and (tc<1104) then st:=st+chr(tc) else st:=st+c; end; utfstr:=st; end; Строки в хранилищах сохраняем через winstr читаем через utfstr. Не стоит придумывать urlencode и т.п для таких простейших задач. С буквой "Ё" решение найдёте сами всё очень просто :-D |
Re: Русский текст
Стрянно. Я до этого пробовал применять перекодировку и у меня ничего не получалось, а тут пашет. Спасибо. Мне как раз надо в новом проекте сохранять русские строки в RS.
|
Ответ: Русский текст
Тоже сталкивался с этой проблемой
|
Ответ: Русский текст
Цитата:
P. S. Сообщения набиваем'с, хорошо, а некропостием обязательно заниматься? |
Ответ: Русский текст
Да ладно вам, я когда впервые на булку зашёл, на дату сообщений вообще не смотрел...
|
Ответ: Русский текст
Цитата:
Цитата:
Цитата:
|
Часовой пояс GMT +4, время: 02:02. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot