ArrayBuffer をテキストに変換します。エンコーディングを自動で判別してデコードします。
| 引数 |
説明 |
型 |
TransformText | undefined |
変換結果のオブジェクト、または undefined |
TransformText | undefined |
| プロパティ |
説明 |
型 |
encoding |
判別されたエンコーディング |
string |
content |
デコード後のテキスト |
string |
| パラメーター |
説明 |
型 |
既定値 |
content |
変換する中身 |
string | ArrayBuffer |
必須 |
import { transformText } from 'ranuts';
const arrayBuffer = new TextEncoder().encode('Hello World').buffer;
const result = transformText(arrayBuffer);
if (result) {
console.log('エンコーディング:', result.encoding);
console.log('中身:', result.content); // 'Hello World'
}
import { transformText } from 'ranuts';
async function readTextFile(file) {
const arrayBuffer = await file.arrayBuffer();
const result = transformText(arrayBuffer);
if (result) {
return result.content;
}
return null;
}
import { transformText } from 'ranuts';
// エンコーディングを自動で判別してデコードする
const result = transformText(arrayBuffer);
if (result) {
console.log(`${result.encoding} でデコードできました`);
console.log(result.content);
}
- 自動で判別:
jschardet を使ってエンコーディングを自動で判別します。
- ArrayBuffer のみ:いまのところ
ArrayBuffer にしか対応しておらず、文字列を渡すと警告が出ます。
- 結果が返る条件:エンコーディングが判別でき、デコードに成功したときだけ結果を返します。そうでなければ
undefined です。
- 使いどころ:ファイルの読み込み、テキストのデコード、エンコーディングの変換などでよく使われます。