Русские файловые пути в Lazarus


FreePascal и Lazarus используют разные кодировки строк, поэтому для путей, которые передаются от файловых диалогов процедурам ввода-вывода, нужны «костыли».

if SaveDialog1.Execute then
  begin
    fpath:=SaveDialog1.Filename;
    //избавляемся от кракозябр (знаков вопроса)
    syspath:=UTF8ToSys(fpath);
    fs:=TFileStream.Create(syspath, fmCreate);
    ...
    fs.Free;
  end;        
Реклама
Запись опубликована в рубрике программирование с метками , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s