Цитата:
Сообщение от maxfox123
в D7 в sListData (если объявлено как ANSIString) считываются знаки вопроса.
|
Такого быть не должно. Знаки вопроса говорят о том, что в системе нерусская кодовая страница по умолчанию для программ, не использующих Юникод. Не 1251, короче. Возможно, стоит диверсия с подменой кодовых страниц (1252=с_1251.nls), и она как-то влияет на Excel через SxS, -- это уж совсем в порядке общего бреда.
Цитата:
Сообщение от maxfox123
НО как проверить на принадлежность если тип у sListData WIDEString?
|
Возможны такие выкрутасы а-ля FastCode:
Код:
var
wChar: WideChar;
begin
...
if (Word(wChar) and $FF00 = $0400) and (Byte(wChar) in [Byte(WideChar('а'))..Byte(WideChar('я'))]) then
begin
end;
if (Word(wChar) and $FF00 = 0) and (Byte(wChar) in [Byte('a')..Byte('z')]) then
begin
end;
end;
Но можно написать и что-то более стандартное, вроде:
Код:
begin
...
if (wChar >= WideChar('а')) and (wChar <= WideChar('я')) then
begin
end;
if (wChar >= WideChar('a')) and (wChar <= WideChar('z')) then
begin
end;
end;