TypeScript:
כתיבת קובץ טקסט
איך לעשות:
TypeScript עצמו לא מתמודד באופן ישיר עם פעולות קובץ כיוון שהוא מתורגם ל-JavaScript, שבדרך כלל פועל בדפדפן עם גישה מוגבלת למערכת הקבצים. עם זאת, כאשר משתמשים בו בסביבת Node.js, המודול fs
(מערכת קבצים) מספק פונקציונליות לכתיבת קבצים.
שימוש במודול fs של Node.js
ראשית, ודא שאתה פועל בסביבת 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
, מה שמציע תחביר נקי יותר לטיפול ב-promises.