コース: Node.jsとExpress.jsをマスターしよう

今すぐコースを受講しましょう

今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。

非同期的なファイル読み込み

非同期的なファイル読み込み

このレッスンではファイルのデータを 非同期的に読み込む方法について学びます それではまず ワークショッパーを起動しましょう "learnyounode" そして今回はこの4番目の "MY FIRST ASYNC I/O!" という問題を解きます "Enter" を押しましょう 問題 さて今回ファイルのデータを読み込むのですが 同期的に読み込むのではなく 非同期的に つまり そのファイルの読み出しの関数を 実行した時点で直ぐに実行結果が返って来る ファイルの読み込みの最中であったとしても 直ぐに読み出しが完了するという事です これを非同期的な実行といいます それでは実際に非同期的なファイルの 読み込みをちょっとやってみましょう まずは読み込むファイルを作成します "test.txt" というファイルを テキストエディタで作成します "line 1" まあ7行程度の 行が含まれるファイルを作成します そして保存 さてこれを "node" から 読み込みましょう まずは "node" の インタープリターを立ち上げます そしてファイルを読み込む為には "fs" モジュールを使用します モジュールの読み込みは "require()" 関数を使用します そして "fs" 読み込みたいモジュール名を パラメーターとして与えます さて同期的に読み込むのであれば "readFileSync()" 読み込みたいファイルのパスを与えます これで読み込みます 非同期的に読み込む場合には この "Sync" というのを外して この様にします これが非同期的な読み込みです そして非同期的な読み込みの場合には 必ずコールバック関数 つまり読み込みが完了した時に 呼び出される関数を渡してやる必要があります "Node.js" 環境一般に通じる規則なのですが コールバック関数の1番目のパラメーターは 必ずエラーを示すパラメーターです そして2番目にデータが帰って来ます この場合は "Buffer" 型のデータが帰って来ます そして例えばそれを出力してみましょう "console.log" で "data" を "toString()" で "Buffer" 型を "String" 型に変換した上で出力 そして閉じます これで実行するとこの様に ファイルの中身が非同期的に…

目次