如何使我的程序与非英语Windows区域兼容(例如中文)?
我的程序是用Delphi XE2编译的,它加载的签名文件包含一些哈希值。
DB.txt包含Cardinal类型数据:
5654564534
8674534664
我使用TStringList和TEncoding.Default来加载文件并将哈希值存储在数组中(Cardinal)。
SL.LoadFromFile(Path, TEncoding.Default);
SetLength(myCardinalArray, SL.Count - 1);
for i := 1 to SL.Count - 1 do
begin
myCardinalArray[i - 1] := strtoint64(SL[i]);
end;
在此之前,程序正常工作,但在Windows中使用中文显示语言执行程序时,该数组包含无效的哈希值。
我已经尝试过TEncoding.Unicode和其他属性,然后我的程序无法在Windows中使用英语显示语言!我应该在使用TEncoding.Unicode之前先检测BOM吗?
使用英文和中文显示语言在Windows中运行什么类型的编码?
由于