Прошу объяснить результат работы вот этого тестика:
- Код: Выделить всё
program project1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this },fileutil;
{$R *.res}
var
s:string;
begin
s:='C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas';
writeln(s);
writeln(systoutf8(s));
writeln('C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas');
writeln(systoutf8('C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas'));
end.
исходник сохранен в анси, на выходе:
C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas
C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas
C:\zcad\cad\programdb\argusspectr/╬яютх∙хэшх/am.pas
C:\zcad\cad\programdb\argusspectr/Оповещение/am.pas
Вторая и четвертая строки не перекодированы, почему?
Что за бред в третьей строке?
исходник сохранен в utf8, на выходе:
C:\zcad\cad\programdb\argusspectr/Р?РїР?Р?РчС%РчР?РёРч/am.pas
C:\zcad\cad\programdb\argusspectr/Р?РїР?Р?РчС%РчР?РёРч/am.pas
C:\zcad\cad\programdb\argusspectr/╨╛╨┐╨╛╨▓╨╡╤Й╨╡╨╜╨╕╨╡/am.pas
C:\zcad\cad\programdb\argusspectr/Р?РїР?Р?РчС%РчР?РёРч/am.pas
Перекодировать незачем, но снова бред в третьей строке, откуда?