TypeScript:
テキストファイルの作成
方法:
TypeScript自体はファイル操作を直接扱わないため、JavaScriptにコンパイルされ、伝統的にはファイルシステムへのアクセスが限られたブラウザで実行されます。しかし、Node.js環境で使用される場合、fs
モジュール(ファイルシステム)がファイルの書き込み機能を提供します。
Node.js fsモジュールの使用
まず、Node.js環境で作業していることを確認してください。それから、fs
モジュールを使用してテキストファイルを書き込みます。基本的な例をこちらに示します:
import * as fs from 'fs';
const data = 'こんにちは、世界!';
const filePath = './message.txt';
fs.writeFile(filePath, data, 'utf8', (err) => {
if (err) throw err;
console.log('ファイルが保存されました!');
});
これにより、「こんにちは、世界!」がmessage.txt
に非同期で書き込まれます。ファイルが存在しない場合、Node.jsはそれを作成します。すでに存在する場合は、Node.jsがそれを上書きします。
同期的なファイル書き込みには、writeFileSync
を使用します:
import * as fs from 'fs';
const data = '再びこんにちは、世界!';
const filePath = './message.txt';
try {
fs.writeFileSync(filePath, data, 'utf8');
console.log('ファイルが保存されました!');
} catch (err) {
console.error(err);
}
人気のあるサードパーティライブラリの使用
ネイティブのfs
モジュールが強力であるにもかかわらず、一部の開発者は追加の便利さと機能性のためにサードパーティのライブラリを使用することを好みます。fs-extra
は、fs
を拡張し、ファイル操作をより簡単にする人気の選択肢です。
まず、fs-extra
をインストールする必要があります:
npm install fs-extra
それから、TypeScriptファイルでテキストコンテンツを書くためにそれを使用できます:
import * as fs from 'fs-extra';
const data = 'これはfs-extraです!';
const filePath = './extraMessage.txt';
// async/awaitを使用
async function writeFile() {
try {
await fs.writeFile(filePath, data, 'utf8');
console.log('fs-extraでファイルが保存されました!');
} catch (err) {
console.error(err);
}
}
writeFile();
このコードスニペットは、以前のfs
の例と同じことを行いますが、プロミスの扱いをよりクリーンな構文で提供するfs-extra
ライブラリを利用しています。