En este programa, aprenderá diferentes técnicas para crear una cadena a partir de los contenidos de un archivo determinado en Java.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de Java:
- Cadena Java
- Clase de archivo Java
Antes de crear una cadena a partir de un archivo, asumimos que tenemos un archivo llamado test.txt en nuestra carpeta src .
Aquí está el contenido de test.txt
Este es un archivo de prueba.
Ejemplo 1: crear una cadena desde un archivo
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 lines = Files.readAllLines(Paths.get(path), encoding); System.out.println(lines); ) )
Salida
(Este es un archivo de prueba).
En el programa anterior, usamos System
la user.dir
propiedad de para obtener el directorio actual almacenado en la ruta de la variable. Consulte Programa Java para obtener el directorio actual para obtener más información.
Usamos defaultCharset()
para la codificación del archivo. Si conoce la codificación, úsela; de lo contrario, es seguro usar la codificación predeterminada.
Luego, usamos el readAllLines()
método para leer todas las líneas del archivo. Toma la ruta del archivo y su codificación y devuelve todas las líneas como una lista como se muestra en la salida.
Dado readAllLines
que también puede lanzar una IOException, tenemos que definir nuestro método principal como tal
public static void main (String () args) lanza IOException
Ejemplo 2: crear una cadena a partir de un archivo
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); ) )
Salida
Este es un archivo de prueba.
En el programa anterior, en lugar de obtener una lista de cadenas, obtenemos una sola cadena, líneas, con todo el contenido.
Para esto, usamos el readAllBytes()
método para leer todos los bytes de la ruta dada. Estos bytes luego se convierten en una cadena utilizando la codificación predeterminada.