string - 如何将使用 Windows 代码页 1251 编码的字符串转换为 Unicode

我的应用收到的 cyrllic 字符串使用(我相信)下表:

说我相信,因为我测试的所有字符都适合这个表。

问题:如何将这样的东西转换成一个字符串,在我的delphi中默认是unicode? 或者更好:Delphi 中是否有现成的转换器,或者我应该编写一个?

最佳答案

如果您使用的是 Delphi 2009 或更高版本,这是自动完成的:

type
  CyrillicString = type AnsiString(1251);

procedure TForm1.FormCreate(Sender: TObject);
var
  UnicodeStr: string;
  CyrillicStr: CyrillicString;
begin
  UnicodeStr := 'This is a test.'; // Unicode string
  CyrillicStr := UnicodeStr; // ...converted to 1251

  CyrillicStr := 'This is a test.'; // Cryllic string
  UnicodeStr := CyrillicStr; // ...converted to Unicode
end;

关于string - 如何将使用 Windows 代码页 1251 编码的字符串转换为 Unicode 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7222615/

相关文章:

asp.net-mvc - 在 Razor 模板引擎上打印可空类型

MongoDB - 添加到集合并递增

architecture - Java中的模块、插件和组件有什么区别?

Wordpress - 删除特定自定义帖子类型的自动生成的段落

web-services - 对于可能返回过时数据的 GET 请求,我应该使用什么 HTTP 状态代

php - 如何在 codeigniter form_validation 类中允许空值或数值?

perl - 这个 zip 命令是如何在 perl 中使用的?

geodjango - Django-profiles,带有地理字段的用户配置文件?

spring - 通过 spring 注释进行的交易 - 只读与否?

sql-server - 检查是否启用了复制