English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo programma, imparerai diverse tecniche per creare stringhe da contenuti di file utilizzando Java.
Prima di creare una stringa da un file, presupponiamo che insrcIn una cartella c'è un file chiamatotest.txtil file.
Questo ètest.txtil contenuto
Questo è un Test file.
import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; public class FileString { public static void main(String[] args) throws IOException { String path = System.getProperty("user.dir") + "\\src\\test.txt"; Charset encoding = Charset.defaultCharset(); List<String> lines = Files.readAllLines(Paths.get(path), encoding); System.out.println(lines); } }
Quando si esegue questo programma, l'output è:
[Questo è un file di test, Test file.]
Nel programma sopra, utilizziamo l'attributo user.dir di System per ottenere il percorso della directory corrente memorizzato nella variabile path. ControllaUn programma Java per ottenere la directory corrente conPiù informazioni.
Usiamo defaultCharset() come codifica del file. Se conosci la codifica, utilizzala, altrimenti è sicuro usare la codifica predefinita
Poi, utilizziamo il metodo readAllLines() per leggere tutte le righe dal file. Accetta il percorso del file e la codifica, e restituisce una lista con tutte le righe, come mostrato nell'output.
Poiché readAllLines potrebbe sollevare IOException, dobbiamo definire in questo modo il metodo main
public static void main(String[] args) throws IOException
import java.io.IOException; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Paths; public class FileString { public static void main(String[] args) throws IOException { String path = System.getProperty("user.dir") + "\\src\\test.txt"; Charset encoding = Charset.defaultCharset(); byte[] encoded = Files.readAllBytes(Paths.get(path)); String lines = new String(encoded, encoding); System.out.println(lines); } }
Quando si esegue questo programma, l'output è:
Questo è un Test file.
Nel programma sopra, non otteniamo una lista di stringhe, ma una stringa che contiene tutto il contenuto
Per questo, utilizziamo il metodo readAllBytes() per leggere tutti i byte dal percorso fornito. Poi convertiamo questi byte in una stringa utilizzando la codifica predefinita