FREGetObjectAsUTF8()

AIR 3.0 和更高版本

用法

FREResult FREGetObjectAsUTF8(FREObject object, uint32_t* length, const uint8_t** value);

参数

object
FREObject。

length
指向 uint32_t 的指针。 length 的值为 value 数组中的字节数。长度包括 null 终止符。长度对应于 FREObject 变量表示的 String ActionScript 变量的长度。

value
指向 uint8_t 数组的指针。函数会使用 FREObject 变量表示的 String ActionScript 变量的字符填充数组。字符串采用 UTF-8 编码,并以 null 字符终止。

返回

FREResult,可能的返回值包括(但不限于)下列值:

FRE_OK
函数已成功且正确设置了 value length 参数。

FRE_TYPE_MISMATCH
FREObject 参数不包含 String ActionScript 值。

FRE_INVALID_OBJECT
FREObject 参数无效。

FRE_INVALID_ARGUMENT
value length 参数为 NULL

FRE_WRONG_THREAD
从运行时在其中具有对本机扩展函数的未决调用的线程以外的线程调用了方法。

说明

调用此函数可将 uint8_t 数组的值设置为 ActionScript String 对象的字符串值。

考虑下面与 value 参数中返回的字符串有关的情况:

  • 您无法更改字符串。

  • 仅当运行时调用的本机扩展函数返回后,字符串才有效。

  • 如果调用任何其他 C API 函数,则字符串变为无效。

因此,如果稍后要操作或访问字符串,请立即将其复制到您自己的数组中。