Перейти к содержанию
Fire Monkey от А до Я
  • 0

AnsiString Delphi XE7 [TEncoding]


Satellite

Вопрос

На Windows тип AnsiString присутствует, на Android отсутствует.

Имеется код (функция):
 

function TForm1.GetConvertedText(s: string): string;
var
  m:TMemoryStream;
  {$IFDEF MSWINDOWS}ss:AnsiString;{$ENDIF MSWINDOWS}
  {$IFDEF ANDROID} ss:String;{$ENDIF ANDROID}
  b:byte;
begin
  m:=TMemoryStream.Create;
  m.LoadFromFile(s);
  m.Seek(0,soFromBeginning);
  SetLength(ss,5);
  m.Read(ss[1],5);

  if ss=SIGN then
  begin
    ss:='';
    m.Read(b,1);
    SetLength(ss,;
    m.Read(ss[1],;
  end;

  Result:=ss;

  m.free;
end;

На Windows результат отображается нормально, потому что ss:=AnsiString;

А вот на Android'e нету значения AnsiString, поэтому для теста я просто присвоил String; Отсюда пошли кракозябры, как можно получить результат в нормальной читаемой кодировке?

 

Почитав немного, наткнулся на TEncoding, но не разобрался.

Ссылка на комментарий

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...