使用lazarus将UTF8转换为ASCII

时间:2013-03-15 10:44:36

标签: freepascal lazarus utf8-decode

我正在从文本文件中读取一些字符串,问题是字符串是UTF8并包含我想删除的字符,例如:Ă

一个不容易的解决方案是让我更换每一个非法字符,但因为我很懒,我想要一个更简单的解决方案

到目前为止,我试过这个:

    line := Utf8ToAnsi(line);

哪一行是我的UTF8编码字符串...我试过eaven声明行为UTF8String ...

这件事有可行的解决方案吗?感谢

1 个答案:

答案 0 :(得分:1)

  

一个不容易的解决方案是让我更换每次出现的   非法字符,但因为我很懒,我想要一个更简单的解决方案

我做了一个函数,用于将每个变音符号替换为类似的char,例如:Á> A,Ç> C,ã> a等您可以使用此解决方案。请看一下这个链接:https://github.com/silvioprog/rutils/blob/master/src/rutils.pas#L1589

HTH