procedure p;
var
f:TextFile;
oemst:OemString;///declared as OemString = Type AnsiString(CP_OEMCP);
begin
AssignFile(f,fileName);
reset(f);
read(f,oemSt);
ShowMessage(oemst);
end;
为了在显示消息中看到正确编码的 oemst,需要声明:
setcodepage(oemst,862,false);
如何从 oem 文件中读取,并确保编译器在 oem 编码中正确显示它?
更新:使用 Oem 是必须的,因为我没有指定这个旧界面。使用 readln 分配文件是旧代码的一部分,我宁愿有一个使用旧方法的解决方案,因为它需要更少的工作和测试。