Вниз
Скачать: CL | DM;

Dos>Win кодировка   Найти похожие ветки 

← →
Сибулбо   (2004-02-08 12:08) [0]

Кодировка из дос в вин, как? Есть текст в досовской код, нужно перевести в вин. код. ?


← →
Anatoly Podgoretsky ©   (2004-02-08 12:18) [1]

OemToChar


← →
Сибулбо   (2004-02-08 12:57) [2]

Src :=FormPlayWin.ListBox1.Items.GetText;
OemToChar(Src, Str);
FormPlayWin.ListBox1.Items.text:= StrPas(Str);
В ЧЕМ ОШИБКА? :(


← →
Anatoly Podgoretsky ©   (2004-02-08 13:29) [3]

Мало данных


← →
Сибулбо   (2004-02-08 13:35) [4]

Тогда так.
У меня в листбокс загружается файл, в котором кодировка досовская, (в листбоксе всякаю чушь, а не текст), так вот мне
нужно все это представить в нужно виде. И я делаю так:

var Src, Str:PChar;
begin
Src :=ListBox1.Items.GetText;
OemToChar(Src, Str);
ListBox1.Items.text:= StrPas(Str);
end;


← →
Anatoly Podgoretsky ©   (2004-02-08 13:37) [5]

А память Пушкин будет выделять?


← →
Сибулбо   (2004-02-08 13:47) [6]

Если не трудно, то напишите как, пожалусто :)
Не знаю :(


← →
Anatoly Podgoretsky ©   (2004-02-08 14:05) [7]

В FAQ достаточно примеров. А с указателями надо учиться или не использовать.


← →
Сибулбо   (2004-02-08 14:17) [8]

Вот из FAQ
procedure DosToWin;
var Src, Str:PChar;
begin
Src := Memo1.Lines.GetText; //Берем текст из TMemo как тип PChar OemToChar(Src, Str); //API функция для перевода текста
Memo2.Lines.Text := StrPas(Str);//Записываем назадend;
Я же так же делал!


← →
KilkennyCat ©   (2004-02-08 14:33) [9]

В Вашем случае необходимо использовать GetMem, ну и FreeMem соответсвенно. Небольшая бодяга - ListBox1.GetTextLen вернет ноль.


← →
Плохиш   (2004-02-08 14:37) [10]

Lenght(ListBox1.Items.Text) вернёт ну явно число > 0


← →
KilkennyCat ©   (2004-02-08 14:41) [11]

блин, старею...

тогда все проблемы:

var
s : pchar;
begin
getmem(s, Lenght(ListBox1.Items.Text) + 1);
oemtochar(listbox1.Items.GetText,s);
listbox1.Items.Text := string(s);
FreeMem(s);
end;


← →
Anatoly Podgoretsky ©   (2004-02-08 14:50) [12]

Сибулбо (08.02.04 14:17) [8]
Какой отвратительный FAQ ты раскопал.


← →
Anatoly Podgoretsky ©   (2004-02-08 14:53) [13]


var
S: string;
begin
S := ListBox1.Items.Text;
if S <> "" then OemToChar(PChar(S), PChar(S));
ListBox1.Items.text := (S);
end;


← →
Verg ©   (2004-02-08 14:54) [14]


> KilkennyCat © (08.02.04 14:41) [11]
> блин, старею...
>
> тогда все проблемы:
>
> var
> s : pchar;
> begin
> getmem(s, Lenght(ListBox1.Items.Text) + 1);
> oemtochar(listbox1.Items.GetText,s);
> listbox1.Items.Text := string(s);
> FreeMem(s);
> end;


Упс. Утечка памяти гарантирована.

listbox1.Items.GetText+F1. Последнее предложение Help-а


← →
KilkennyCat ©   (2004-02-08 14:55) [15]

почему утечка?


← →
Verg ©   (2004-02-08 15:03) [16]


> KilkennyCat © (08.02.04 14:55) [15]


Так как про Help-то?

Не прчитали еще?

Allocates a text buffer and fills it with the value of the Text property.

function GetText: PChar; virtual;

Description

Call GetText to obtain a dynamically allocated character buffer containing all of the strings in the list. Individual strings are separated by a carriage return and (on Windows) line feed. The caller is responsible for freeing the returned value using the StrDispose procedure.


← →
KilkennyCat ©   (2004-02-08 15:14) [17]

понял, спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.012 c
1-53475
korvet
2004-02-06 10:53
2004.02.17
D3 не принимает команду при компиляции


3-53361
pp
2004-01-27 12:28
2004.02.17
Можно ли динамически создавать/удалять View в Интербейзе?


1-53468
able
2004-02-05 20:18
2004.02.17
Сервисы.


4-53819
BorisSV
2003-12-15 12:48
2004.02.17
Убрать программу с панели задачь в XP


1-53458
Эдуард
2004-02-08 16:26
2004.02.17
Есть ли возможнось узнать есть ли у класса A public-свойство B?




   Наверх