Nodejs_node.js でファイルをコピーする方法
フロントエンドの子供たちは皆、JavaScript にはディスク ファイルを操作する権限がないことを知っていますが、サーバーの子供たちは常にそれを軽蔑してきました。しかし、nodejs は私たちのフロントエンドを誇りに思っていると言えます。私は最近、node を勉強していますが、その強力な機能は人々をとても興奮させます。今日はファイルの読み取りと書き込みの仕組みを学びました。
まず、nodejs に付属する fs モジュールを導入する必要があります。
var fs=require("fs");
詳細については、Nodejs API を参照してください: http://www.w3cfuns.com/tools.php?mod=booknodejs
使用される主な方法は 2 つあります:
1. fs.readFile(ファイル名, [エンコーディング], [コールバック])
これはファイルの非同期読み取りです。filename はファイル パス、encoding はエンコード形式、callback はコールバック関数です。
ファイルのすべての内容を非同期的に読み取ります。例は次のとおりです:
fs.readFile('/etc/passwd', function (err, data) { if (err) throw err; console.log(data); });
ここではローカル テスト ファイルを使用しています:
function readFile(){ console.log('--------开始读取文件--------'); var fs = require('fs'); fs.readFile('test.txt', 'utf-8', function(err, data) { if (err) { console.log("读取失败"); } else { console.log(data); return data; } }); console.log('--------读取结束--------'); }
2. fs.writeFile(ファイル名, データ, エンコーディング='utf8', [コールバック])
ファイルの書き込み:
function writeFile(data){ fs.writeFile("test2.txt",data,function(error){ if(error){ throw error; }else{ console.log("文件已保存"); } }); }
エラー コード: copyFile.js ファイル
var fs=require("fs"); function readFile(){ console.log('--------开始读取文件--------'); var fs = require('fs'); fs.readFile('test.txt', 'utf-8', function(err, data) { if (err) { console.log("读取失败"); } else { console.log(data); return data; } }); console.log('--------读取结束--------'); } function writeFile(data){ fs.writeFile("test2.txt",data,function(error){ if(error){ throw error; }else{ console.log("文件已保存"); } }); } function copyFile(){ var txt=readFile(); writeFile(txt); } copyFile();
ターミナルでノード copyFile.js を実行した結果は次のとおりです:
注:
1. ファイルのエンコード。最初はローカルで新しい txt ドキュメントを作成しましたが、それをエディタで開くと、結果は常に文字化けしていました。次に、encoding を使用するのが最善です。そうでない場合は、バッファに従って読み込まれます。
2. 同期実行の問題。
上記のコードには問題があり、ファイルの読み取りと書き込みのメソッドを別々に記述しました。本来は test.txt ファイルの内容を test2.txt にコピーするつもりでしたが、ファイルの読み取りは非同期で実行されます。つまり、いつ実行されるかは誰にも分からないため、test.txt の結果は未定義になります。
正しい方法は、読み取り後にファイルを書き込むことです:
var fs=require("fs"); function copyFile(){ console.log('--------开始读取文件--------'); var fs = require('fs'); fs.readFile('test.txt', 'utf-8', function(err, data) { if (err) { console.log("读取失败"); } else { writeFile(data) return data; } }); console.log('--------读取结束--------'); } function writeFile(data){ console.log(data); fs.writeFile("test2.txt",data,'utf8',function(error){ if(error){ throw error; }else{ console.log("文件已保存"); } }); } copyFile();
以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

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

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

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

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

ホットトピック











Node.js は、高いパフォーマンス、スケーラビリティ、クロスプラットフォーム サポート、豊富なエコシステム、開発の容易さなどの機能を備えているため、バックエンド フレームワークとして使用できます。

Node.js には次のグローバル変数が存在します。 グローバル オブジェクト: グローバル コア モジュール: プロセス、コンソール、require ランタイム環境変数: __dirname、__filename、__line、__column 定数: unknown、null、NaN、Infinity、-Infinity

MySQL データベースに接続するには、次の手順に従う必要があります。 mysql2 ドライバーをインストールします。 mysql2.createConnection() を使用して、ホスト アドレス、ポート、ユーザー名、パスワード、データベース名を含む接続オブジェクトを作成します。 connection.query() を使用してクエリを実行します。最後に connection.end() を使用して接続を終了します。

Node.js インストール ディレクトリには、npm と npm.cmd という 2 つの npm 関連ファイルがあります。違いは次のとおりです。拡張子が異なります。npm は実行可能ファイルで、npm.cmd はコマンド ウィンドウのショートカットです。 Windows ユーザー: npm.cmd はコマンド プロンプトから使用できますが、npm はコマンド ラインからのみ実行できます。互換性: npm.cmd は Windows システムに固有ですが、npm はクロスプラットフォームで使用できます。使用上の推奨事項: Windows ユーザーは npm.cmd を使用し、他のオペレーティング システムは npm を使用します。

はい、Node.js はバックエンド開発言語です。これは、サーバー側のビジネス ロジックの処理、データベース接続の管理、API の提供などのバックエンド開発に使用されます。

はい、Node.js はフロントエンド開発に使用でき、主な利点には、高性能、豊富なエコシステム、クロスプラットフォーム互換性が含まれます。考慮すべき点は、学習曲線、ツールのサポート、コミュニティの規模の小ささです。

Node.js と Java の主な違いは、設計と機能です。 イベント駆動型とスレッド駆動型: Node.js はイベント駆動型で、Java はスレッド駆動型です。シングルスレッドとマルチスレッド: Node.js はシングルスレッドのイベント ループを使用し、Java はマルチスレッド アーキテクチャを使用します。ランタイム環境: Node.js は V8 JavaScript エンジン上で実行され、Java は JVM 上で実行されます。構文: Node.js は JavaScript 構文を使用し、Java は Java 構文を使用します。目的: Node.js は I/O 集中型のタスクに適しており、Java は大規模なエンタープライズ アプリケーションに適しています。

Web 開発において Node.js と Java にはそれぞれ長所と短所があり、どちらを選択するかはプロジェクトの要件によって異なります。 Node.js はリアルタイム アプリケーション、迅速な開発、マイクロサービス アーキテクチャに優れており、Java はエンタープライズ グレードのサポート、パフォーマンス、セキュリティに優れています。
