在GJS中将字符串转换为UTF-16字节数组

问题描述

在我的Gnome扩展程序中,我想呼叫GLib.convert。遗憾的是,它不适用于字符串,但需要一个ByteArray。现在,我想知道如何将Javascript字符串转换为UTF-16字节数组。

Bonus指出它是否使用了Gnome绑定的某些部分而不是用Java语言实现。

解决方法

ByteArray.fromString(someString,'UTF-16')会将您的JS字符串转换为UTF-16编码的Uint8Array。可以将其传递给GLib.convert(尽管fromFromString应该了解GLib.convert可以完成的所有编码,也许您之后不需要了吗?)

另请参阅ByteArray documentation