1

リモートファイルを書き込むサービスがありますが、入力としてバイト配列が必要です。インターフェイスの残りの部分は、JavaScriptユニコード文字列のみを提供します。その時それらを書く方法はありません。

私はMDCでこのようなものを見つけました:

var converter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"]
                .createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
var s = {};
var tt = 'test string';
var data = converter.convertToByteArray(tt, s);

彼らがMDCで言っていることによると、これは私が必要としていることを正確に実行するはずですが、これでは失敗します。

コンポーネントが失敗コードを返しました:0x80004005(NS_ERROR_FAILURE)[nsIScriptableUnicodeConverter.convertToByteArray]

ドキュメントには、文字列がUTF-16であってはならないことがあります。JSはデフォルトでUTF-16を使用していることを読みました。

文字列からこのいまいましいバイト配列を生成する他の方法はありますか?

4

1 に答える 1

1

文字セットを評価する必要があります!例:converter.charset ='UTF-8';

于 2010-12-21T14:42:54.123 に答える