点击或拖拽改变大小

Functions.Oem2Ansi 方法 (String)

X#
将OEM字符字符串转换为ANSI字符。

命名空间:  XSharp.Core
程序集:  XSharp.Core (在 XSharp.Core.dll 中) 版本:2.22 GA
语法
 FUNCTION Oem2Ansi(
	cOemString AS STRING
) AS STRING
查看代码

参数

cOemString
类型:String
源OEM字符字符串。

返回值

类型:String
转换后的ANSI字符字符串。
备注
Oem2Ansi()将源字符串中的单个字符转换为ANSI字符集中的匹配字符。
由于某些符号,例如ß,在ANSI和OEM字符集中的代码值不同,因此在使用Windows读取或显示DOS字符串数据或文件名时,通常需要将字符从OEM转换为ANSI。 请注意,当SetAnsi()为FALSE时,大多数X# for Clipper应用程序会自动执行OEM到ANSI的转换。然而,有些应用程序,例如FRead(),假设它们正在处理二进制数据,因此不会执行这样的转换。
备注
警告 警告:
Ansi2Oem() 和 Oem2Ansi() 函数系列是兼容性函数。除非你真的必须使用它们,否则不要使用。 X# 是一个 Unicode 语言,如果你使用这些函数,将进行 Unicode - Ansi - Oem - Unicode 的转换。
你还应该意识到,Ansi2Oem(Oem2Ansi(cSource)) 不总是会返回 cSource。一些字符可能 在 OEM 代码页中不可用,可能会被转换为其他字符。
例如:Windows 代码页 1252 在位置 203 上有大写 E Umlaut (Ë)。 当转换为 OEM 代码页 437 时,这将变为没有 Umlaut 的大写 E (69)。再次转换为 Ansi 将保持为没有 Umlaut 的 E。
示例
此示例使用Oem2Ansi()将OEM字符转换为ANSI字符,以便将DOS文件读取到Windows中:
X#
1SetAnsi(TRUE)
2// 无需在ANSI和OEM之间进行转换
3Oem2Ansi(FReadLine(ptrFileHandle))
4// 如有需要,请自行进行转换
参见