‫Narratore: Questa è una lezione davvero
‫entusiasmante perché imparerai come leggere i dati dai file
‫e anche come scrivere i dati nei file.
‫E abbiamo già importato il modulo integrato
‫di cui abbiamo bisogno
‫nell'ultima lezione, quindi ora liberiamoci di questo codice
‫e iniziamo a utilizzare il modulo FS.
‫Quindi usiamo fs. readfilesync, ok.
‫E la sincronizzazione sta per sincrono, e
‫inizierai a conoscere
‫il sincrono e l'asincrono proprio nel prossimo video, ok.
‫Quindi questa è la versione sincrona della lettura del file.
‫Esiste anche una versione asincrona.
‫Quindi, la funzione di sincronizzazione dei file di lettura accetta due argomenti.
‫Il primo è il percorso del file che stiamo leggendo
‫e poi anche il carattere codificato.
‫Quindi, prima il percorso del
‫file, e il file si trova
‫nella cartella txt, ed è quello di input.
‫Quindi, questo testo che ho qui sull'avocado è
‫ciò che leggeremo in una variabile.
‫E non sono sicuro che sarai
‫in grado di vedere questa emoji qui direttamente sul tuo sistema
‫operativo, ma se sei su Windows 8 o
‫Windows 10, probabilmente funzionerà bene.
‫Ok, quindi abbiamo specificato un percorso lì, e ci
‫sono diversi modi per farlo,
‫ma per ora andrò con quello più semplice.
‫Quindi, tutto ciò che farò è impostarlo nel file /txt/input. TXT.
‫Quindi, di nuovo, iniziamo dalla cartella home, che
‫è fondamentalmente la cartella
‫in cui index. js si trova, quindi
‫questo è il punto lì dentro,
‫quindi ci spostiamo nella cartella txt e
‫da lì input. TXT.
‫Quindi qui
‫il secondo dobbiamo definire la codifica
‫dei caratteri, che è utf8, di solito,
‫almeno se stai usando solo l'inglese.
‫Ok, e se non lo specifichi,
‫otteniamo qualcosa chiamato buffer, ok, e non è proprio
‫quello che vogliamo.
‫Vogliamo davvero solo il testo.
‫E così, chiamando questa funzione qui ora leggeremo i dati
‫dal file e ce li restituirà, quindi dobbiamo
‫salvarli da qualche
‫parte e metterli in una variabile.
‫Quindi diciamo textIn perché è un input più testuale.
‫Ok, quindi accediamo alla console solo
‫per vedere se funziona.
‫Dagli un secondo e ora dobbiamo eseguirlo di nuovo qui.
‫Quindi nel terminale, posso semplicemente usare la freccia su per
‫eseguire il comando precedente.
‫Quindi qui è nodeindex. js di nuovo.
‫Premi Invio, e vediamo, e infatti ci siamo.
‫Quindi ecco il contenuto di quel file.
‫Così perfetta.
‫Ora sappiamo come leggere le cose dai file.
‫Congratulazioni.
‫Ok, ma vogliamo anche sapere come scrivere su file.
‫Quindi creiamo qui una nuova variabile con altro testo
‫e poi scriviamola in un nuovo file.
‫Quindi chiamiamolo textOut, quindi per l'output.
‫E fondamentalmente scriviamo solo
‫una stringa in cui includeremo questo testo.
‫Userò una stringa modello qui, e
‫a questo punto
‫presumo che tu abbia una certa familiarità con la sintassi es6, ok.
‫Quindi abbiamo già usato const
‫qui, che è un modo es6 di dichiarare variabili invece di var, e
‫ora la stringa del modello, che è un'altra cosa es6.
‫Quindi, prima di es6, se
‫volessi aggiungere qualcosa al testo, dovresti usare l'operatore più.
‫Quindi diciamo "questo è" e poi spazio e poi testo.
‫Ok, quindi dovresti usare l'operatore più, ma se è una
‫stringa modello è molto più semplice.
‫Tutto quello che dobbiamo fare è usare i backtick, poi del testo,
‫e poi in questa
‫stringa puoi facilmente collegare la variabile.
‫Quindi diciamo: "Questo è ciò che sappiamo dell'avocado. " Quindi usiamo
‫questa sintassi per inserire la variabile, okay, e quindi fondamentalmente
‫all'interno di queste parentesi graffe qui possiamo
‫scrivere qualsiasi JavaScript che vogliamo.
‫Quindi non è solo per collegare le variabili immediatamente,
‫possiamo anche fare
‫molti calcoli o qualsiasi espressione javaScript che volevamo qui.
‫Ora, diciamo un nuovo carattere di linea.
‫Quindi questa è una nuova linea, ok.
‫E solo per mostrarti che possiamo effettivamente usare
‫JavaScript all'interno di queste parentesi graffe qui.
‫Quindi questo simbolo del dollaro e poi parentesi graffe.
‫Quindi data, o in realtà data così, punto ora.
‫Ok, questa è la nostra stringa,
‫che ha questo testo qui insieme al testo che
‫abbiamo letto prima dalla variabile.
‫E quindi ora scriviamolo in un nuovo file.
‫Quindi, di nuovo, usiamo il modulo FS
‫e questa volta writeFileSync.
‫Ok, e di nuovo specifichiamo il percorso del file,
‫e lo vogliamo ancora nella cartella
‫txt, e lo chiamiamo output. txt, ok.
‫E ora dobbiamo effettivamente
‫specificare cosa vogliamo scrivere in quel file, giusto,
‫e dirci la variabile text out.
‫E questo non restituisce nulla
‫di significativo finché non salviamo nulla in nessuna variabile.
‫Tutto ciò che facciamo è finalmente registrare qualcosa in più sulla console,
‫come semplicemente informare se il file è stato scritto.
‫Ok, allora proviamolo di nuovo.
‫Pulirò la console con il comando K.
‫Premi il tasto freccia su, invio e forse l'hai visto.
‫Ora abbiamo questo nuovo file chiamato Output e, se
‫lo apro, vedrai "Questo è ciò che
‫sappiamo dell'avocado", che è
‫ciò che abbiamo scritto nell'indice. js, e quindi
‫questo è il testo che
‫veniva prima dal file di input, giusto.
‫Quindi la nuova linea che abbiamo
‫creato, e quindi creata praticamente in questa data.
‫Quindi questa è la data. ora,
‫quindi è solo un timestamp in millisecondi.
‫Va bene, ed è così che leggi
‫e scrivi da e verso i file in Node. JS.