ノードでファイルパスを操作して操作する方法
システム内のすべてのファイルにはパスがあります。
LinuxおよびmacOSでは、パスは次のようになります。
/users/flavio/file.txt
一方、Windowsコンピュータは異なり、次のような構造になっています。
C:\users\flavio\file.txt
この違いを考慮に入れる必要があるため、アプリケーションでパスを使用する場合は注意が必要です。
を使用してこのモジュールをファイルに含めます
const path = require('path')
そして、あなたはそのメソッドを使い始めることができます。
パスから情報を取得する
パスを指定すると、次の方法を使用してパスから情報を抽出できます。
dirname
:ファイルの親フォルダを取得しますbasename
:ファイル名の部分を取得しますextname
:ファイル拡張子を取得します
例:
const notes = '/users/flavio/notes.txt'
path.dirname(notes) // /users/flavio
path.basename(notes) // notes.txt
path.extname(notes) // .txt
次の2番目の引数を指定することにより、拡張子なしでファイル名を取得できます。basename
:
path.basename(notes, path.extname(notes)) //notes
パスの操作
を使用して、パスの2つ以上の部分を結合できます。path.join()
:
const name = 'flavio'
path.join('/', 'users', name, 'notes.txt') //'/users/flavio/notes.txt'
を使用して、相対パスの絶対パス計算を取得できます。path.resolve()
:
path.resolve('flavio.txt') //'/Users/flavio/flavio.txt' if run from my home folder
この場合、ノードは追加します/flavio.txt
現在の作業ディレクトリに移動します。 2番目のパラメーターフォルダーを指定する場合、resolve
最初のものを2番目のベースとして使用します:
path.resolve('tmp', 'flavio.txt')//'/Users/flavio/tmp/flavio.txt' if run from my home folder
最初のパラメーターがスラッシュで始まる場合、それは絶対パスであることを意味します。
path.resolve('/etc', 'flavio.txt')//'/etc/flavio.txt'
path.normalize()
は別の便利な関数で、次のような相対指定子が含まれている場合に実際のパスを計算しようとします。.
または..
、またはダブルスラッシュ:
path.normalize('/users/flavio/..//test.txt') ///users/test.txt
解決と正規化の両方で、パスが存在するかどうかはチェックされません。取得した情報に基づいてパスを計算するだけです。
私の無料ダウンロードNode.jsハンドブック
その他のノードチュートリアル:
- npmパッケージマネージャーの紹介
- Node.jsの紹介
- Axiosを使用したHTTPリクエスト
- Node.jsアプリをホストする場所
- Node.jsを使用してGoogleAnalyticsAPIと対話します
- npxノードパッケージランナー
- package.jsonガイド
- npmはどこにパッケージをインストールしますか?
- Node.jsを更新する方法
- npmを使用してインストールされたパッケージを使用または実行する方法
- package-lock.jsonファイル
- npmを使用したセマンティックバージョニング
- node_modulesフォルダーをGitにコミットする必要がありますか?
- すべてのノードの依存関係を最新バージョンに更新します
- Node.jsを使用したJSONの解析
- npmパッケージのインストール済みバージョンを検索します
- Node.jsストリーム
- 古いバージョンのnpmパッケージをインストールします
- ノード内の現在のフォルダを取得します
- ノードにオブジェクトを記録する方法
- エクスポートを使用してノードファイルから機能を公開します
- ノードとブラウザの違い
- ノードを使用してHTTPPOSTリクエストを作成します
- Nodeを使用してHTTPリクエストの本文データを取得する
- ノードバッファ
- Node.jsの簡単な歴史
- Node.jsをインストールする方法
- Nodeを使用するには、どのくらいのJavaScriptを知っている必要がありますか?
- Node.jsREPLの使用方法
- ノード、コマンドラインから引数を受け入れる
- ノードを使用してコマンドラインに出力する
- ノードのコマンドラインからの入力を受け入れる
- `npmアンインストール`でnpmパッケージをアンインストールする
- npmグローバルまたはローカルパッケージ
- npmの依存関係とdevDependencies
- Node.jsイベントループ
- process.nextTick()を理解する
- setImmediate()を理解する
- ノードイベントエミッター
- HTTPサーバーを構築する
- ノードでHTTPリクエストを行う
- Nodefsモジュール
- Axiosを使用したノードでのHTTPリクエスト
- Nodeでファイルを読み取る
- ノードファイルパス
- Nodeを使用したファイルの書き込み
- ノードファイルの統計
- ノードでのファイル記述子の操作
- ノード内のフォルダーの操作
- ノードパスモジュール
- ノードhttpモジュール
- Node.jsでのWebSocketの使用
- MySQLとNodeの操作の基本
- Node.jsでのエラー処理
- パグガイド
- Node.jsから環境変数を読み取る方法
- Node.jsプログラムを終了する方法
- Nodeosモジュール
- ノードイベントモジュール
- ノード、開発と本番の違い
- Node.jsにファイルが存在するかどうかを確認する方法
- Node.jsで空のファイルを作成する方法
- Node.jsでファイルを削除する方法
- Node.jsを使用してファイルの最終更新日を取得する方法
- JavaScriptで日付が今日かどうかを判断する方法
- Node.jsのファイルにJSONオブジェクトを書き込む方法
- 次のプロジェクトでNode.jsを使用する必要があるのはなぜですか?
- 任意のフォルダからWebサーバーを実行します
- Node.jsでMongoDBを使用する方法
- ChromeDevToolsを使用してNode.jsアプリをデバッグします
- pnpmとは何ですか?
- Node.jsランタイムv8オプションリスト
- npm使用時の「書き込みアクセスの欠落」エラーを修正する方法
- Node.jsでESモジュールを有効にする方法
- Node.jsを使用して子プロセスを生成する方法
- Expressで解析されたボディと生のボディの両方を取得する方法
- Node.jsでファイルのアップロードを処理する方法
- ノードモジュールのピア依存関係とは何ですか?
- Node.jsでCSVファイルを作成する方法
- Node.jsでCSVファイルを読み取る方法
- ノードコアモジュール
- Node.jsを使用して一度に複数のフォルダー番号をインクリメントする
- キャンバスをデータURLに印刷する方法
- Node.jsとCanvasを使用して画像を作成および保存する方法
- Node.jsを使用して画像をダウンロードする方法
- Node.jsでファイルの名前を一括変更する方法
- ノード内のフォルダ内のすべてのファイルの名前を取得する方法
- promiseを使用し、Node.jsコールバックベースの関数で待機する方法
- npmパッケージをローカルでテストする方法
- 実行時に現在のNode.jsバージョンを確認する方法
- Sequelizeを使用してPostgreSQLと対話する方法
- Node.jsを使用してHTMLページを提供する
- Node.jsの `util.pumpは関数ではありません`エラーを解決する方法