ノード学習 2: fs ファイル システム

一般的な方法

  • fs.access(): ファイルが存在し、Node.js にそのファイルへのアクセス許可があるかどうかを確認してください。
  • fs.appendFile(): ファイルにデータを追加します。ファイルが存在しない場合は、ファイルが作成されます。
  • fs.chmod(): ファイルの権限を変更します (渡されたファイル名で指定)。関連メソッド: fs.lchmod()fs.fchmod().
  • fs.chown(): ファイルの所有者とグループを変更します (渡されたファイル名で指定)。関連メソッド: fs.fchown()fs.lchown().
  • fs.close(): ファイル記述子を閉じます。
  • fs.copyFile():ファイルをコピーします。
  • fs.createReadStream(): 読み取り可能なファイル ストリームを作成します。
  • fs.createWriteStream(): 書き込み可能なファイル ストリームを作成します。
  • fs.mkdir(): 新しいフォルダー。
  • fs.mkdtemp(): 一時ディレクトリを作成します。
  • fs.rm():削除 ファイルやディレクトリも削除できます。
  • fs.rmdir():フォルダを削除します。
  • fs.rename(): ファイルまたはフォルダーの名前を変更/移動します。
  • fs.open():ファイルモードを設定します。
  • fs.readdir(): ディレクトリの内容を読み取ります。
  • fs.readFile(): ファイルの内容を読み取ります。関連メソッド: fs.read()。
  • fs.readlink(): シンボリックリンクの値を読み取ります。
  • fs.realpath(): 相対ファイル パス ポインター (…) をフル パスに解決します。
  • fs.stat(): ファイルのステータス (渡されたファイル名で指定) を返します。これは、ファイルが存在するかどうかを判断するために使用できます。関連メソッド: fs.fstat()fs.lstat().
  • fs.symlink(): ファイルへのシンボリック リンクを作成します。
  • fs.truncate(): 渡されたファイル名で識別されるファイルを指定された長さに切り詰めます。関連メソッド: fs.ftruncate()
  • fs.link(): ファイルを指す新しいハード リンクを作成します。
  • fs.unlink():ファイルまたはシンボリックリンクを削除します。
  • fs.unwatchFile(): ファイルの変更の監視を停止します。
  • fs.utimes(): ファイルのタイムスタンプを変更します (渡されたファイル名で指定)。関連メソッド: fs.futimes()
  • fs.watchFile(): ファイルの変更の監視を開始します。関連メソッド: fs.watch()。
  • fs.writeFile(): データをファイルに書き込みます。関連メソッド: fs.write()。

使用例

ファイル/ディレクトリが存在するかどうかを確認する

使用fs.access

// 判断文件/目录 是否存在
fs.access('./data', fs.constants.F_OK, err => {
    
    
    console.log(`${
      
      err ? '不存在' : '存在'}`);
})

// 判断文件是否可读 
fs.access(file, constants.R_OK, (err) => {
    
    
  console.log(`${
      
      file} ${
      
      err ? '不可读' : '可读'}`);
});

// 判断文件是否可写
fs.access(file, constants.W_OK, (err) => {
    
    
    console.log(`${
      
      file} ${
      
      err ? '不可写' : '可写'}`);
});

使用fs.stat()

fs.stat('./data', (err, stats) => {
    
    
    if (err) console.log('文件/目录不存在')
    // 不存在时,stats 为 undefined
    console.log('stats:', stats)
})

ディレクトリを作成する

最初のレベルのフォルダーを作成すると、複数のレベルでエラーが報告されます

fs.mkdir('./data', err => {
    
    
   if (err) throw err
})

複数レベルのディレクトリを作成する

fs.mkdir('./data/test/test', {
    
     recursive: true }, err => {
    
    
   if (err) throw err
})

ディレクトリを削除する

指定したフォルダーを削除します。フォルダーは空でなければなりません

fs.rmdir('./data', err => {
    
    
    if (err) throw err
})

ディレクトリを削除します (ディレクトリ下のすべてのフォルダとファイルを含む)

fs.rmdir('./data/test', {
    
     recursive: true },  err => {
    
    
    if (err) throw err
})

上記と同じ効果

fs.rm('./data/test', {
    
     recursive: true }, err => {
    
    
    if (err) throw err
})

ファイルの削除

使用fs.unlink

fs.unlink('./data/test.txt', err => {
    
    
    if (err) throw err
})

使用fs.rm

fs.rm('./data/test.txt', err => {
    
    
    if (err) throw err
})

おすすめ

転載: blog.csdn.net/Kevin_xq/article/details/129697468