Haaste: Tiedostojärjestelmäoperaatiot
Pyyhkäise näyttääksesi valikon
Tavoite
Tehtävienhallinnan automaation hallinta! Tehtävänäsi on kehittää sovellus, joka kerää tehtäviä yhdestä lähteestä, poimii niiden sisällön ja liittää ne toiseen tiedostoon. Ratkaisusi tulee myös käsitellä mahdolliset virheet prosessin aikana.
Tehtävä
Kuvittele, että sinulla on kaksi tiedostoa:
tasks.txt, joka sisältää listan olemassa olevista tehtävistä;new-task.txt, joka sisältää yhden tehtävän, joka tulee lisätä tiedostoontasks.txt.
Noudata näitä ohjeita haasteen suorittamiseksi:
- Valmistele työtila
- Luo uusi kansio koneellesi;
- Avaa se haluamassasi koodieditorissa.
- Luo
tasks.txt
-
Luo tiedosto nimeltä
tasks.txt; -
Lisää siihen seuraavat tehtävät tai lataa valmis tiedosto:
Sisältö:
Teach a goldfish to play chess;Build a sandcastle in your living room;Create a song 🎶 using only sounds from nature.
-
Luo
new-task.txt- Luo tiedosto nimeltä
new-task.txt;
- Luo tiedosto nimeltä
-
Lisää siihen seuraava tehtävä tai lataa valmis tiedosto:
Sisältö:
Invent a new dance move and perform it in public.
-
Luo
app.js- Tuo
fs-moduuli tiedostojen käsittelyä varten; - Käytä
readFile()-funktiota lukeaksesinew-task.txt-tiedoston sisällön;
- Tuo
- Käsittele onnistuneet ja epäonnistuneet operaatiot käyttämällä
.then()ja.catch();.then()-lohkon sisällä käytäappendFile()-funktiota lisätäksesi sisällön tiedostoontasks.txt;
- Lisää rivinvaihtomerkki (
\n) lisätyn tehtävän jälkeen.
- Suorita sovellus
- Tallenna
app.js; - Avaa pääte ja suorita:
node app
Jos haluat käyttää alla olevaa koodieditoria, huomioithan, että se ei tunnista tiedostojasi eikä näytä edistymistäsi.
123456789const fs = require("fs").___; fs.___("new-task.txt", "utf-8") .then(___ => { return fs.___("tasks.txt", ___ + ___); }) .___((error) => { console.log("Error:", error); });
- Tuo
fs-moduuli tiedostojen käsittelyä varten. - Käytä
fs.readFile("new-task.txt", "utf-8")lukeaksesi sisällön tiedostostanew-task.txt. - Ketjuta
.then()käsittelemään tiedoston sisällön onnistunutta lukemista. - Anna
.then()-lohkoon palautefunktio, joka vastaanottaa sisällön argumenttina. - Palauta
.then()-lupauksenreadFile-lohkossafs.appendFile-kutsu, jolla lisäät sisältöä tiedostoontasks.txt. - Muista lisätä rivinvaihtomerkki
\nerottelemaan lisätty sisältö. - Ketjuta
.then()-operaationappendFile-lohkon jälkeen.catch()-lohko käsittelemään mahdolliset virheet koko ketjussa. - Anna
.catch()-lohkoon palautefunktio, joka vastaanottaa virheparametrin. - Kirjaa virheilmoitus ja vastaanotettu virhe konsoliin
.catch()-lohkossa. - Suorita skripti Node.js:llä komennolla
node app.
const fs = require("fs").promises;
fs.readFile("new-task.txt", "utf-8")
.then((content) => {
return fs.appendFile("tasks.txt", content + "\n");
})
.catch((error) => {
console.log("Error occurred:", error);
});
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme