Pot.js で利用可能。 PotLite.js では利用できません。
Unicode に文字コード変換します。
Blob の機能を利用し、文字コード変換を行います。
引数 data には、変換するデータを TypedArray か Array もしくは Blob で指定します。
任意に、引数 from に変換前の文字コードを指定できます (e.g. 'Shift_JIS', 'EUC-JP' etc.)。
変換された文字列を結果にもつ Pot.Deferred インスタンスが返ります。
Blob がサポートされていない場合、失敗します。
Pot.globalize() が適応されている場合、Pot.convertEncodingToUnicode() が convertEncodingToUnicode() で実行できます。
Unicode に変換された文字列を結果にもつ Pot.Deferred インスタンスが返ります。
// 'こんにちは。ほげほげ'
var unicode = [
12371, 12435, 12395, 12385, 12399, 12290,
12411, 12370, 12411, 12370
];
// Shift_JIS: 'こんにちは。ほげほげ'
var sjis = [
130, 177, 130, 241, 130, 201,
130, 191, 130, 205, 129, 66,
130, 217, 130, 176, 130, 217,
130, 176
];
// EUC-JP: 'こんにちは。ほげほげ'
var eucjp = [
164, 179, 164, 243, 164, 203,
164, 193, 164, 207, 161, 163,
164, 219, 164, 178, 164, 219,
164, 178
];
// UTF-8: 'こんにちは。ほげほげ'
var utf8 = [
227, 129, 147, 227, 130, 147,
227, 129, 171, 227, 129, 161,
227, 129, 175, 227, 128, 130,
227, 129, 187, 227, 129, 146,
227, 129, 187, 227, 129, 146
];
Pot.convertEncodingToUnicode(sjis, 'Shift_JIS').then(function(res) {
Pot.debug('SJIS to Unicode:');
Pot.debug(res); // 'こんにちは。ほげほげ'
}).then(function() {
return Pot.convertEncodingToUnicode(eucjp, 'EUC-JP').then(function(res) {
Pot.debug('EUC-JP to Unicode:');
Pot.debug(res); // 'こんにちは。ほげほげ'
});
}).then(function() {
return Pot.convertEncodingToUnicode(utf8, 'UTF-8').then(function(res) {
Pot.debug('UTF-8 to Unicode:');
Pot.debug(res); // 'こんにちは。ほげほげ'
});
});