Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.22;
Скачать: CL | DM;

Вниз

ASCII   Найти похожие ветки 

 
МИФИст ©   (2002-06-08 19:33) [0]

Подскажите как в Мемо выводить информацию в ASCII виде, например,
чтобы символ $6 выводился как "пиковая масть", а не как прямоугольник или твёрдый знак?

Я пробовал вот так не получается:

StrASCII: String;
Buffer: array[0..1599] of Char;
...
StrASCII:=StrASCII+Chr(Ord(Buffer[i]))+" ";
...
Form1.Memo1.Text:=StrASCII;


 
MaximatorVeter ©   (2002-06-08 19:53) [1]

$6 это вроде как число, а не символ ...


 
MaximatorVeter ©   (2002-06-08 20:08) [2]


> МИФИст © (08.06.02 19:33)
> Подскажите как в Мемо выводить информацию в ASCII виде


Это значит каждому символу будет соответствовать байтовый код ...


 
MaximatorVeter ©   (2002-06-08 20:17) [3]

var
StrASCII: String;
Buffer: array[0..1599] of Char;
i:word;
begin
for i:=0 to 1599 do
StrASCII:=StrASCII+IntToStr(Byte(Buffer[i]))+" ";
Memo1.Text:=StrASCII;
end;


GL ...


 
rhf ©   (2002-06-08 21:11) [4]

а ты используй шрифт другой - например TERMINAL
хотя это наверное отразиться на остальном русском тексте :)


 
МИФИст ©   (2002-06-08 21:13) [5]

Мы друг друга не поняли. В шестнадцатеричном виде следующий код:
06 С0 21 05 06, это в Мемо либо вообще не отображается, либо в виде прямоугольников, а должно быть


 
rhf ©   (2002-06-08 21:17) [6]

ну ты шрифт смени и увидишь свои картинки :)


 
MaximatorVeter ©   (2002-06-08 21:35) [7]

Тогда так:
var
StrASCII: String;
Buffer: array[0..1599] of Byte;
i:word;
begin
for i:=0 to 1599 do
StrASCII:=StrASCII+Chr(Buffer[i])+" ";
Memo1.Text:=StrASCII;
end;


Но если в Buffer встретиться zero, то дальше ничего не отобразиться (конец строки).
Интересно, а какой это шрифт, у которого на шестой позиции пика?


 
rhf ©   (2002-06-08 22:07) [8]

2 MaximatorVeter, ты таблицу ASCII посмотри, в кодировке DOS


 
MaximatorVeter ©   (2002-06-08 22:11) [9]

Вот и подошли к разгадке - в Windows Memo то мы "пичку" не получим?


 
rhf ©   (2002-06-08 22:39) [10]

2 MaximatorVeter, да получим если поставить шрифт TERMINAL - он же в дос-кодировке все показывает, вот только при этом весь русский текст уйдет в никуда :(
.... короче не самое хорошее решение :)


 
MaximatorVeter ©   (2002-06-08 22:47) [11]


> rhf ©

Для шрифта TERMINAL, как и для всех остальных нет кодировки ASCII (cм. свойство Memo1.Font.Charset ...


 
rhf ©   (2002-06-08 22:54) [12]

не важно.....
ты когда-нибудь блокнотом досовские файлы смотрел? Если да, то какой шрифт ставилдля этого? Вот и тут также, ты попробуй и увидишь, что отображаються символы........


 
MaximatorVeter ©   (2002-06-08 22:57) [13]


> rhf ©


Это все понятно, а вот в Дельфи как сделать? Я заинтерисовался ...


 
rhf ©   (2002-06-08 23:05) [14]

просто укажи font - Terminal во время конструирования или

memo1.Font.Name:="Terminal";
memo1.Font.charset:=OEM_CHARSET;
memo1.Lines.add(#6);

в райнтайм


 
MaximatorVeter ©   (2002-06-08 23:16) [15]

Да!


 
rhf ©   (2002-06-08 23:21) [16]

ну поздравляю !!!



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

Текущий архив: 2002.08.22;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.01 c
3-70986
ППавел
2002-07-31 10:24
2002.08.22
Ячейки Базы данных


4-71414
Nickolay
2002-06-06 18:28
2002.08.22
Номер иконки в Dll или Exe файле больше их количества


14-71374
Gregson
2002-07-25 13:59
2002.08.22
надо


3-71005
Bogus
2002-07-31 16:28
2002.08.22
Обновление базы и ADO


3-70987
Bilfeld
2002-07-31 09:42
2002.08.22
SQL