NodeJs の開発中に偶然発見された驚き
通常の状況では、形式が正しい限り、JSON ファイルから文字を読み取り、JSON.parse を渡すことに問題はありません
場合によっては、予期しないトークンが依然として表示されることがありますJSON 形式が正しいことを確認します
調査の結果、表示されない Unicode 文字があることが判明しました
そのため、UTF-8 の dom バージョンに問題があると判断されました。一般に、エディタが意図的に設定しない場合、デフォルトで dom で保存されます
解決策は、まず読み込んだファイルをバイナリに変換し、次に dom シンボルを取得して
を削除することです。コード実装部分
function readText(pathname) { var bin = fs.readFileSync(pathname); if (bin[0] === 0xEF && bin[1] === 0xBB && bin[2] === 0xBF) { bin = bin.slice(3); } return bin.toString('utf-8'); }
NodeJsが読み込むJSONファイルを整形する際の注意事項などの関連記事は、PHP中国語サイトに注目してください!