百分比编码超出范围异常

percent encode out of range exception

package:convert/convert.dart 包中的 percent.encode() 有问题。
我有一个阿拉伯人使用的 API,可以包含阿拉伯字符。其中一个阿拉伯字符是 "خ",如果我想用这种方法转换它 percent.encode('خ'.codeUnits)。代码单元号为 1582,十六进制表示 0x62e。在这种情况下,我会得到一个异常,因为它超出了这个库可以转换的字节范围。我有这个例外 Unhandled Exception: FormatException: Invalid byte 0x62。你能帮我解决我的问题吗?我可以使用其他替代品吗?

我找到了解决办法,我用过Uri.encodeQueryComponent(data)。它成功了。

[更新 1]

还有另一种方法

percent.encode(utf8.encode('خ'))