将XML从UTF16转换为UTF8编码文件的最简单方法是什么?
与Ansi版本相比,Inno Setup Unicode版本有任何缺点吗?
或者是什么原因仍然是两个版本并行提供,而不仅仅是Unicode版本?
在使用Ansi版本开发的现有Inno Setup项目中使用Unicode版本时是否存在任何潜在问题?
我有一个名为的函数GetServerName
。我需要传递文件名(例如“ test.txt”)和所需的节字符串(例如“ server”)
该test.txt
文件包含这样的内容
data1 | abcd
data2 | efgh
server| 'serverName1'
data3 | ijkl
Run Code Online (Sandbox Code Playgroud)
我需要提取服务器名称,以便在我的函数中传递类似的内容GetServerName('test.txt', 'server')
,并且应该返回serverName1
。
我的问题是之前test.txt
是ANSI编码的文件。现在它可以是ANSI编码的文件或Unicode编码的文件。下面的函数对于ANSI编码的文件正常工作,但是如果文件以UNICODE编码,则会出现问题。我怀疑有LoadStringsFromFile
功能。因为调试时可以看到它返回Unicode字符,而不是人类可读的字符。如何简单地解决我的问题?(或者如何查找文件的编码类型以及如何将UNICODE字符串转换为ANSI进行比较,然后我自己做即可)
data1 | abcd
data2 | efgh
server| 'serverName1'
data3 | ijkl
Run Code Online (Sandbox Code Playgroud)
在Windows中,当我另存为文本文件时。我在图像中附加了4个选项。我找到了,Windows提到Unicode为UTF-16LE编码(有点混乱)