【问题标题】:How to restore text broken due to wrong encoding in Delphi? [closed]如何恢复由于 Delphi 中的错误编码而损坏的文本? [关闭]
【发布时间】:2021-05-10 18:29:43
【问题描述】:

我使用 Delphi 2009。我收到一个字符串形式的文本,看起来像 'Р'РёР·РіСѓРЅРѕРІ (ранний) {VHS}'。使用在线解码器,我能够确定它实际上是 Win-1251 代码页。

我应该怎么做才能恢复正常,换句话说,让它再次可读?

【问题讨论】:

  • 您是如何收到开头的文本的? supposed 的文本是什么样的?请提供更多详细信息,最好是minimal reproducible example。

标签: delphi encoding codepages


【解决方案1】:
var s: string;
    rbs: RawByteString;
begin
    rbs := Utf8ToAnsi('Визгунов (ранний) {VHS}');
    SetCodePage(rbs, 1251, false);
    s := string(rbs); // s = 'Визгунов (ранний) {VHS}'
end;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-29
    • 1970-01-01
    • 1970-01-01
    • 2017-09-12
    相关资源
    最近更新 更多