Programma Kotlin per creare stringhe dal contenuto di un file

In questo programma imparerai diverse tecniche per creare una stringa dai contenuti di un dato file in Kotlin.

Prima di creare una stringa da un file, supponiamo di avere un file denominato test.txt nella nostra cartella src .

Ecco il contenuto di test.txt

 Questo è un file di prova.

Esempio 1: crea una stringa dal file

 import java.nio.charset.Charset import java.nio.file.Files import java.nio.file.Paths fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" val encoding = Charset.defaultCharset(); val lines = Files.readAllLines(Paths.get(path), encoding) println(lines) )

Quando esegui il programma, l'output sarà:

 (Questo è un file di prova.)

Nel programma precedente, usiamo Systemla user.dirproprietà di per ottenere la directory corrente memorizzata nel percorso della variabile. Controlla il programma Kotlin per ottenere la directory corrente per ulteriori informazioni.

Abbiamo usato defaultCharset()per la codifica del file. Se conosci la codifica, usala, altrimenti è sicuro usare la codifica predefinita.

Quindi, abbiamo usato il readAllLines()metodo per leggere tutte le righe dal file. Prende il percorso del file e la sua codifica e restituisce tutte le righe come un elenco come mostrato nell'output.

Poiché readAllLines può anche generare un'IOException, dobbiamo definire il nostro metodo principale come tale

 public static void main (String () args) genera IOException

Esempio 2: creare una stringa da un file

 import java.nio.charset.Charset import java.nio.file.Files import java.nio.file.Paths fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" val encoding = Charset.defaultCharset() val encoded = Files.readAllBytes(Paths.get(path)) val lines = String(encoded, encoding) println(lines) )

Quando esegui il programma, l'output sarà:

 Questo è un file di prova.

Nel programma precedente, invece di ottenere un elenco di stringhe, otteniamo una singola stringa, linee, con tutto il contenuto.

Per questo, abbiamo utilizzato il readAllBytes()metodo per leggere tutti i byte dal percorso specificato. Questi byte vengono quindi convertiti in una stringa utilizzando la codifica predefinita.

Ecco il codice Java equivalente: programma Java per creare una stringa dal contenuto di un file.

Articoli interessanti...