Nodejsでファイルの内容を変更する方法

青灯夜游
リリース: 2023-01-11 09:20:34
オリジナル
8929 人が閲覧しました

ファイルの内容を変更する Nodejs メソッド: 1. "fs.writeFile(path,data,callback:(err)=>void)" メソッドを使用します; 2. "fs.open(path,(err)" を使用します) ,fd)=>{})" を実行してファイルを開き、ファイル記述子 fd を介してデータを書き込みます。

Nodejsでファイルの内容を変更する方法

このチュートリアルの動作環境: Windows7 システム、nodejs バージョン 14.15.4、DELL G3 コンピューター。

nodejs では、ファイル システム モジュール (略して fs) の組み込みメソッドを使用して、ファイルの内容を変更できます。

ファイルの内容を変更します

データをファイルに書き込みます。データは文字列またはバッファーです: fs.writeFile(path,data,callback: (err )=>void)

fs.writeFile('message.txt', data, (err) => {
  if (err) throw err;
});
ログイン後にコピー

ファイル記述子 fd:

fs.open(path,(err,fd)=>{
    //针对拿到的fd 进行操作:将buffer内容写如fd对应的文件里
    //position为文件的起点
    //length为待写的长度
    //offset为缓存区起写的位置
    fs.write(fd,buffer,offset,length,position,(err,bytesWrittenLen,buffer)=>{

    })
    //关闭文件
    fs.close(fd, (err) => {
        if (err) throw err;
    });
})
ログイン後にコピー

を使用してファイルを書き込む別の方法もあります。例: ファイルを読み取り、ファイルの内容

const fs = require('fs');
const path = require('path');
const newList = [];
fs.readFile(path.join(__dirname, './json/hp_mph.json'), 'utf8', function (err, data) {
    if (err) throw err;
    let list = JSON.parse(data);
    // list.forEach((item,index)=>{
    //     let value = item.properties;
    //     let result = {};  
    //     result.ID = index + 1;
    //     result.TYPE = value.FLAG_A;
    //     result.X = value.X;
    //     result.Y = value.Y;
    //     newList.push(result);
    // })
 
    for (let i = 0; i < list.length; i++) {
        let result = {};
        let value = list[i].properties;
        result.ID = i + 1;
        result.TYPE = value.FLAG_A;
        result.X = value.X;
        result.Y = value.Y;
        newList.push(result);
    }
 
    let newContent = JSON.stringify(newList, null, 4);
    fs.writeFile(&#39;result.json&#39;, newContent, &#39;utf8&#39;, (err) => {
        if (err) throw err;
        console.log(&#39;success done&#39;);
    });
});
ログイン後にコピー

[推奨学習: "nodejs チュートリアル"]

以上がNodejsでファイルの内容を変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート