fs ファイルシステムのディレクトリ操作とファイル情報操作をnode.jsで実装するにはどうすればよいですか?
この記事では、node.js での fs ファイル システムのディレクトリ操作とファイル情報の操作メソッドの詳細な分析と、詳細なコードの説明を提供します。必要な読者は参照してください。
ディレクトリ操作
ディレクトリが存在する場合、作成は失敗します
ディレクトリを同期的に作成します fs.mkdirSync(path, [mode])
const fs = require('fs'); let mkdir = './mkdir'; fs.mkdir(mkdir, (err) => { if (err) { console.log(`mkdir ${mkdir} file failed~`); } else { console.log(`mkdir ${mkdir} file success~`); } });
ディレクトリを読み取ります
ディレクトリがread その下にサブディレクトリまたはサブファイルがある場合、サブディレクトリまたはサブファイルのファイル名が files の配列要素として使用されます
ディレクトリを同期的に読み取ります fs.readdirSync()
const fs = require('fs'); let mkdir = './mkdir'; fs.mkdir(mkdir, (err) => { if (err) { console.log(`mkdir ${mkdir} file failed~`); return false; } console.log(`mkdir ${mkdir} file success~`); let fileName = ['ONE', 'TWO', 'THREE']; fileName.forEach((elem) => { fs.mkdir(`${mkdir}/${elem}`, (err) => { if (err) { console.log(`${mkdir}/${elem} failed~`); return false; } }); fs.readdir(mkdir, (err, files) => { if (err) { console.log(`readdir ${mkdir} file failed~`); return false; } console.log(`readdir ${mkdir} file success~`); console.log(`${files}`); }); }); });
ファイルを表示および変更しますまたはディレクトリ情報
fs モジュールでは、stat メソッドまたは lstat メソッドを使用してファイルまたはディレクトリを表示できます。唯一の違いは、シンボリック リンク ファイルに関する情報を表示するときに lstat メソッドを使用する必要があることです。
fs.stat(path, callback(err, stats))
fs.lstat(path, callback(err, stats))
ファイル情報の表示
ファイルを表示する同期メソッド情報 fs.statSync(path);
const fs = require('fs'); let mkdir = './mkdir'; fs.stat(mkdir, (err, stats) => { if (err) { console.log(`fs.stats ${mkdir} file failed~`); } else { console.log(`fs.stats ${mkdir} file success~`); console.log(stats); } });
statsの詳細説明
Stats { dev: 2050,文件或目录所在的设备ID,仅在UNIX有效 mode: 16877,使用数值形式代表的文件或目录的权限标志 nlink: 3,文件或目录的硬连接数量 uid: 0,文件或目录的所有者的用户ID,仅在UNIX有效 gid: 0,文件或目录的所有者的用户组ID,仅在UNIX有效 rdev: 0,为字符设备文件或块设备文件所在设备ID,仅在UNIX有效 blksize: 4096, ino: 4197533,文件或目录的索引编号,仅在UNIX有效 size: 4096,文件尺寸,即文件中的字节数 blocks: 8, atimeMs: 1511846425357.986, mtimeMs: 1511846425256.986, ctimeMs: 1511846425256.986, birthtimeMs: 1511846425256.986, atime: 2017-11-28T05:20:25.358Z,文件的访问时间 mtime: 2017-11-28T05:20:25.257Z,文件的修改时间 ctime: 2017-11-28T05:20:25.257Z,文件的创建时间 birthtime: 2017-11-28T05:20:25.257Z }
fstatメソッドでファイル情報をクエリ
openメソッドまたはopenSyncメソッドを使用してファイルを開いてファイル記述子を返す場合、 fsモジュールでfstatを使用できます 開いているファイル情報を問い合わせるメソッド
const fs = require('fs'); let mkdir = './mkdir'; fs.open(mkdir, 'r', (err, fd) => { if (err) { console.log(`open ${mkdir} file failed~`); return false; } fs.fstat(fd, (err, stats) => { if (err) { console.log(`fstat ${mkdir} file failed~`); return false; } console.log(JSON.stringify(stats)); }) })
fs.fstat
{ "dev": 1041887651, "mode": 16822, "nlink": 1, "uid": 0, "gid": 0, "rdev": 0, "ino": 4222124650663107, "size": 0, "atimeMs": 1519394418412.3062, "mtimeMs": 1519394418412.3062, "ctimeMs": 1519394418412.3062, "birthtimeMs": 1519394418402.2554, "atime": "2018-02-23T14:00:18.412Z", "mtime": "2018-02-23T14:00:18.412Z", "ctime": "2018-02-23T14:00:18.412Z", "birthtime": "2018-02-23T14:00:18.402Z" }
ファイルまたはディレクトリが存在するか確認します
パラメータはブール型の値です
const fs = require('fs'); let mkdir = './mkdir'; fs.exists(mkdir, (exits) => { if (exits) { console.log(`${exits}, ${mkdir} file exists`); } else { console.log(`${exits}, ${mkdir} file not exists`) } });
ファイルアクセスを変更します時刻と変更時刻
fs.utimes(path, atime, mtime, callback(err))
ファイルのアクセス時刻と変更時刻を同期的に変更します fs.utimesSync(path, atime, mtime)
// 修改文件访问时间及修改时间都为当前时间 const fs = require('fs'); let mkdir = './mkdir'; fs.utimes(mkdir, new Date(), new Date(), (err) => { if (err) { console.log(`fs.utimes ${mkdir} file failed~`); } else { console.log(`fs.utimes ${mkdir} file success~`); } })
ファイルまたはディレクトリの権限を変更します
ファイルまたはディレクトリの権限を同期的に変更します fs.chmodSync(path, mode);
fs.chmod(path, mode, callback(err) ))
mode は権限のサイズを表します
fs.chmod メソッドがトリガーされる前の権限は drwxr-xr-x です。
fs.chmod メソッドがトリガーされ、権限は drw-- -----.
const fs = require('fs'); let mkdir = './mkdir'; fs.chmod(mkdirOne, '0600', (err) => { if (err) { console.log(`fs.chmod ${mkdir} file failed`); return false; } console.log(`fs.chmod ${mkdir} file success~`); });
open メソッドを使用する場合、または openSync メソッドがファイルを開いてファイル記述子を返した後、fs モジュールの fchmod メソッドを使用してファイルの読み取りおよび書き込み権限を変更できます
rreee以上が皆さんのためにまとめたもので、今後皆さんのお役に立てれば幸いです。
関連記事:
AngularJS で写真をアップロードする命令を作成する方法 (詳細なチュートリアル)
JavaScript で Li 要素のインスタンスを動的に追加する方法
以上がfs ファイルシステムのディレクトリ操作とファイル情報操作をnode.jsで実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









General Matrix Multiplication (GEMM) は、多くのアプリケーションやアルゴリズムの重要な部分であり、コンピューター ハードウェアのパフォーマンスを評価するための重要な指標の 1 つでもあります。 GEMM の実装に関する徹底的な調査と最適化は、ハイ パフォーマンス コンピューティングとソフトウェア システムとハードウェア システムの関係をより深く理解するのに役立ちます。コンピューター サイエンスでは、GEMM を効果的に最適化すると、計算速度が向上し、リソースが節約されます。これは、コンピューター システムの全体的なパフォーマンスを向上させるために非常に重要です。 GEMM の動作原理と最適化方法を深く理解することは、最新のコンピューティング ハードウェアの可能性をより有効に活用し、さまざまな複雑なコンピューティング タスクに対してより効率的なソリューションを提供するのに役立ちます。 GEMMのパフォーマンスを最適化することで

7月29日、AITO Wenjieの40万台目の新車のロールオフ式典に、ファーウェイの常務取締役、ターミナルBG会長、スマートカーソリューションBU会長のYu Chengdong氏が出席し、スピーチを行い、Wenjieシリーズモデルの発売を発表した。 8月にHuawei Qiankun ADS 3.0バージョンが発売され、8月から9月にかけて順次アップグレードが行われる予定です。 8月6日に発売されるXiangjie S9には、ファーウェイのADS3.0インテリジェント運転システムが初搭載される。 LiDARの支援により、Huawei Qiankun ADS3.0バージョンはインテリジェント運転機能を大幅に向上させ、エンドツーエンドの統合機能を備え、GOD(一般障害物識別)/PDP(予測)の新しいエンドツーエンドアーキテクチャを採用します。意思決定と制御)、駐車スペースから駐車スペースまでのスマート運転のNCA機能の提供、CAS3.0のアップグレード

Apple 16 システムの最適なバージョンは iOS16.1.4 です。iOS16 システムの最適なバージョンは人によって異なります。日常の使用体験における追加と改善も多くのユーザーから賞賛されています。 Apple 16 システムの最適なバージョンはどれですか? 回答: iOS16.1.4 iOS 16 システムの最適なバージョンは人によって異なる場合があります。公開情報によると、2022 年にリリースされた iOS16 は非常に安定していてパフォーマンスの高いバージョンであると考えられており、ユーザーはその全体的なエクスペリエンスに非常に満足しています。また、iOS16では新機能の追加や日常の使用感の向上も多くのユーザーからご好評をいただいております。特に最新のバッテリー寿命、信号性能、加熱制御に関して、ユーザーからのフィードバックは比較的好評です。ただし、iPhone14を考慮すると、

4月11日、ファーウェイはHarmonyOS 4.2 100台のアップグレード計画を初めて正式に発表し、今回は携帯電話、タブレット、時計、ヘッドフォン、スマートスクリーンなどのデバイスを含む180台以上のデバイスがアップグレードに参加する予定だ。先月、HarmonyOS4.2 100台アップグレード計画の着実な進捗に伴い、Huawei Pocket2、Huawei MateX5シリーズ、nova12シリーズ、Huawei Puraシリーズなどの多くの人気モデルもアップグレードと適応を開始しました。 HarmonyOS によってもたらされる共通の、そして多くの場合新しい体験を楽しむことができる Huawei モデルのユーザーが増えることになります。ユーザーのフィードバックから判断すると、HarmonyOS4.2にアップグレードした後、Huawei Mate60シリーズモデルのエクスペリエンスがあらゆる面で向上しました。特にファーウェイM

コンピュータ オペレーティング システムは、コンピュータ ハードウェアとソフトウェア プログラムを管理するために使用されるシステムです。また、すべてのソフトウェア システムに基づいて開発されたオペレーティング システム プログラムでもあります。オペレーティング システムが異なれば、ユーザーも異なります。では、コンピュータ システムとは何でしょうか?以下では、編集者がコンピューターのオペレーティング システムとは何かについて説明します。いわゆるオペレーティング システムはコンピュータのハードウェアとソフトウェア プログラムを管理するもので、すべてのソフトウェアはオペレーティング システム プログラムに基づいて開発されます。実際、OSには産業用、商業用、個人用など多くの種類があり、幅広い用途に対応しています。以下では、編集者がコンピューターのオペレーティングシステムとは何かについて説明します。 Windows システムとはどのようなコンピュータのオペレーティング システムですか? Windows システムは、米国 Microsoft Corporation によって開発されたオペレーティング システムです。ほとんどよりも

Linux と Windows は 2 つの一般的なオペレーティング システムで、それぞれオープン ソースの Linux システムと商用 Windows システムを表します。どちらのオペレーティング システムにも、ユーザーがオペレーティング システムと対話するためのコマンド ライン インターフェイスがあります。 Linux システムでは、ユーザーはシェル コマンド ラインを使用しますが、Windows システムでは、cmd コマンド ラインを使用します。 Linux システムのシェル コマンド ラインは、ほぼすべてのシステム管理タスクを完了できる非常に強力なツールです。

Oracle データベースでのシステム日付の変更方法の詳細説明 Oracle データベースでのシステム日付の変更方法は、主に NLS_DATE_FORMAT パラメータの変更と SYSDATE 関数の使用です。この記事では、読者が Oracle データベースのシステム日付を変更する操作をよりよく理解し、習得できるように、これら 2 つの方法とその具体的なコード例を詳しく紹介します。 1. NLS_DATE_FORMAT パラメータメソッドの変更 NLS_DATE_FORMAT は Oracle データです

システム フォントはどのフォルダーにありますか? 現代のコンピューター システムでは、フォントは重要な役割を果たし、読書体験やテキスト表現の美しさに影響を与えます。パーソナライズやカスタマイズに熱心な一部のユーザーにとって、システム フォントの保存場所を理解することが特に重要です。では、システムフォントはどのフォルダーに保存されているのでしょうか?この記事では、それらを皆さんに一つずつ明らかにしていきます。 Windows オペレーティング システムでは、システム フォントは「Fonts」というフォルダーに保存されます。このフォルダーは、デフォルトでは Win C ドライブにあります。
