У меня есть текстовый файл, который может иметь разные кодировки (ASCII, UTF-8, UTF-16, UTF-32). Лучшая часть заключается в том, что она заполнена только с числами, например:Преобразование unicode в ascii
192848292732
Мой вопрос: будет ли функция, как один пыльник иметь возможность корректно отображать все данные? Если не так? (Я загрузил файл в виде строки в строку контейнера)
function output(container: AnsiString): AnsiString;
var
i: Integer;
begin
Result := '';
for i := 1 to Length(container) do
if (Ord(container[i]) <> 0) then
Result := Result + container[i];
end;
Моя логика такова, что если кодировка отличается, то ASCII и UTF-8 дополнительными символы равна 0?
Он проходит все тесты просто отлично.
Что такое строка? AnsiString или UnicodeString? Как вы можете задать вопрос в Unicode без указания версии Delphi ?! Как вы предлагаете работать с спецификациями? –
@DavidHeffernan Я использую delphi 7, String - это AnsiString witch содержит байты, загруженные из файла, 0 представляет собой байт 0 Я предполагаю, что байт 0 является фиктивным, и я разделяю его на оставшуюся чистую строку ascii. Это правильно ? – opc0de
@SertacAkyuz да, я отредактирую свой вопрос взамен – opc0de