ユニコードへのxlxsは、ファイルJSONをエンコード

/ * * 
 * JSONはEXCELオン
 モジュールをインストールする* XLSX必要性を:I XLSX NPM 
 *ラン:シート1 outer.jsonノードexcel.js test.xlsx 
 * 1つのパラメータ(必須)パスEXCEL 
 * 2つのパラメータ(必須)表
 *パラメータ3(オプション)JSON生成されたファイル名
 * / 
LET引数 = process.argv.splice(2 );
 IF(!Array.isArray(引数)のarguments.length || <2 ){
   返す のボイド(にconsole.logを: "ノードexcel.js test.xlsx outer.jsonシート1のパラメータは、コマンド例を欠落している" ); 
} 

試みが{ 
  FSを聞かせ =( 'FS'を必要とする;)
  XLを聞かせ =( 'XLSX'を必要とする);
   // 取得パラメータは 
  せ=引数ファイルパス[0 ]。
  SHEETNAME LET =引数[1 ];
   // Excelを読み取る 
  せブック= xl.readFileSync(filePathに); 
  LETワーク = workbook.Sheets [SHEETNAME];
   // 解析JSONデータに変換 
  させ、データ= xl.utils.sheet_to_json(ワーク) ; 
  はconsole.log( "正常に解決フォームは、... JSONファイルに変換されます" );
   // 出力JSONファイル 
  jsonName =引数[2]の引数[2]してみましょう: "outer.json"?; 
  
  聞かせてあるnewData = JSONを。 (データ)文字列化、

  LETのdocdata = JSON.parse(あるnewData); 
  LET CURRENTDATA = docData.map((項目)=> {
     リターン {
      ID:item.id + "" 
      名前:encodeUnicode(item.name用)
    } 
  }); 

  fs.writeFile(jsonName、JSON.stringify(CURRENTDATA)、(ERR) => {
     IF (ERR){ 
      にconsole.log( " JSONファイルの書き込みエラー、再試行してください" ); 
    } { 
      はconsole.log( "正常に生成JSONファイル:「+ jsonName); 
    } 
  }); 
} キャッチ(E){ 
  はconsole.log(E); 
} 

// ユニコード符号化フォーマット
関数encodeUnicode(STR){  
   VARの RES = [];  
   のためのVARI = 0; I <str.length。I ++ ){   
  RES [I] =( "00" + str.charCodeAt(I)(16)).sliceを(.toString -4 )。  
  }   
  戻り `\\ u` + res.join(` \\ u`)。  
}  

おすすめ

転載: www.cnblogs.com/yhquan/p/12132086.html