![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перевод символа в другой формат
Danco © (2009-12-02 07:17:00)Как перевести символ в какой либо цифровой формат?
например:
s:='L';
i:=(...(L));
Заранее благодарен за ответ.
brother (2009-12-02 12:42:00) [1]тип должен быть char
Anatoly Podgoretsky (2009-12-02 10:34:00) [2]> Danco (02.12.2009 09:41:06) [6]
Copy тоже string возвращает.
Danco (2009-12-02 09:41:00) [3]
> Ord, только она работает с символами, а не строками.
Через Copy символ вырезаю.
Всем спасибо, нашел другой выход.
sniknik (2009-12-02 09:36:00) [4]> автоматически ставит длинный тире(-)
короткий тире
> функция Ord его не видит.
посмотри справку про юникодный аналог, код короткого тире 8211, т.е. много больше чем из основной таблицы символов. (проверить - в ворде зажимаешь Ctrl, набираешь на дополнительной раскладке 8211, отпускаешь Ctrl)
Anatoly Podgoretsky (2009-12-02 08:57:00) [5]Ord, только она работает с символами, а не строками.
Danco (2009-12-02 07:45:00) [6]var
s:String;
i:Integer;
begin
s:='-';
i:=Ord(S);
ShowMessage(IntToStr(i));
этот код работает, но я беру символ из Excel и он его не распознает.
если в Excel или Word написать "текст[пробел]-[пробел]текст" то он автоматически ставит длинный тире(-), и функция Ord его не видит.
Есть еще какая-нибудь подобная функция, что бы символ в числовой формат перевести или какой-нибудь другой?
Работаю в Windows 7 на студии (Delphi) 2010
brother (2009-12-02 07:21:00) [7]ну или
i:= Ord(s);
brother (2009-12-02 07:20:00) [8]i:=Ord('L');