En este programa, aprenderá diferentes técnicas para crear una cadena a partir de los contenidos de un archivo determinado en Kotlin.
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.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) )
Cuando ejecute el programa, la salida será:
(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 el Programa Kotlin 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 que, readAllLines 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.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) )
Cuando ejecute el programa, la salida será:
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.
Aquí está el código Java equivalente: programa Java para crear una cadena a partir del contenido de un archivo.