TypeScript:
Att skriva en textfil
Hur:
TypeScript hanterar inte direkt filoperationer då det kompileras till JavaScript, som traditionellt körs i webbläsaren med begränsad åtkomst till filsystemet. Dock, när det används i en Node.js-miljö, ger fs
-modulen (File System) funktionalitet för att skriva filer.
Använda Node.js fs-modul
Först, se till att du arbetar i en Node.js-miljö. Använd sedan fs
-modulen för att skriva textfiler. Här är ett grundläggande exempel:
import * as fs from 'fs';
const data = 'Hej, världen!';
const filePath = './message.txt';
fs.writeFile(filePath, data, 'utf8', (err) => {
if (err) throw err;
console.log('Filen har sparats!');
});
Detta kommer asynkront att skriva “Hej, världen!” till message.txt
. Om filen inte finns skapar Node.js den; om den gör det, skriver Node.js över den.
För synkron filskrivning, använd writeFileSync
:
import * as fs from 'fs';
const data = 'Hej igen, världen!';
const filePath = './message.txt';
try {
fs.writeFileSync(filePath, data, 'utf8');
console.log('Filen har sparats!');
} catch (err) {
console.error(err);
}
Använda populära tredjepartbibliotek
Även om den inbyggda fs
-modulen är kraftfull, föredrar vissa utvecklare att använda tredjepartbibliotek för ytterligare bekvämlighet och funktionalitet. fs-extra
är ett populärt val som utökar fs
och gör filoperationer mer raka.
Först behöver du installera fs-extra
:
npm install fs-extra
Sedan kan du använda det i din TypeScript-fil för att skriva textinnehåll:
import * as fs from 'fs-extra';
const data = 'Det här är fs-extra!';
const filePath = './extraMessage.txt';
// Använda async/await
async function writeFile() {
try {
await fs.writeFile(filePath, data, 'utf8');
console.log('Filen har sparats med fs-extra!');
} catch (err) {
console.error(err);
}
}
writeFile();
Detta kodavsnitt gör samma sak som de tidigare fs
-exemplen men använder sig av fs-extra
-biblioteket, vilket erbjuder en renare syntax för att hantera löften.