¿Cómo leer y mostrar datos de los archivos .txt?lectura y la visualización de datos de un archivo .txt
Respuesta
BufferedReader in = new BufferedReader(new FileReader("<Filename>"));
A continuación, puede utilizar in.readLine(); para leer una sola línea a la vez. Para leer hasta el final, escriba un ciclo while como tal:
String line;
while((line = in.readLine()) != null)
{
System.out.println(line);
}
in.close();
Recuerde agregar in.close(); al final de tu código – Brian
¿cómo se puede verificar la duración del archivo? –
En general:
- Crear una
FileInputStream
para el archivo. - Crear
InputStreamReader
envolver el flujo de entrada, especificando la correcta encoding - Opcionalmente crear una
BufferedReader
alrededor delInputStreamReader
, lo que hace que sea más fácil de leer una línea a la vez. - Lectura hasta que no haya más datos (por ejemplo,
readLine
devuelve nulo) - Visualice los datos sobre la marcha o búfer para más tarde.
Si necesita más ayuda que eso, por favor sea más específico en su pregunta.
Si el archivo es estrictamente texto, yo prefiero usar la clase java.util.Scanner
.
Se puede crear un Scanner
de un archivo por:
Scanner fileIn = new Scanner(new File(thePathToYourFile));
Entonces, se puede leer el texto del archivo usando los métodos:
fileIn.nextLine(); // Reads one line from the file
fileIn.next(); // Reads one word from the file
Y, se puede comprobar si hay deja más texto con:
fileIn.hasNext(); // Returns true if there is another word in the file
fileIn.hasNextLine(); // Returns true if there is another line to read from the file
Una vez que hayas leído el texto, y lo hayas guardado en String
, puede imprimir la cadena a la línea de comandos con:
System.out.print(aString);
System.out.println(aString);
El enlace publicado contiene la especificación completa de la clase escáner. Será útil ayudarlo con cualquier otra cosa que desee hacer.
Siempre me olvido de Scanner, nunca lo he usado realmente ... Es una pena que tenga un * nombre de juego * aunque :((Y lo recomendaría siempre especificando explícitamente el juego de caracteres) –
Bueno, estoy asumiendo el escenario más simple posible. los conjuntos de caracteres pueden ser confusos. Normalmente no tiene que preocuparse por ello. – jjnguy
Pero los escáneres son ideales para la lectura rápida y sucia de archivos de texto. – jjnguy
Es muy probable que desee utilizar la clase FileInputStream:
int character;
StringBuffer buffer = new StringBuffer("");
FileInputStream inputStream = new FileInputStream(new File("/home/jessy/file.txt"));
while((character = inputStream.read()) != -1)
buffer.append((char) character);
inputStream.close();
System.out.println(buffer);
Usted también querrá coger algunas de las excepciones lanzadas por el método read() y el constructor de FileInputStream, pero esos son detalles de implementación específico para tu proyecto.
inputStream.read() no devuelve un * carácter * - i t devuelve * byte * (como int, ciertamente, pero son cosas muy diferentes). Para leer el texto, debes usar un lector. –
Si usted quiere tomar algunos atajos puede utilizar Apache Commons IO:
import org.apache.commons.io.FileUtils;
String data = FileUtils.readFileToString(new File("..."), "UTF-8");
System.out.println(data);
:-)
Me encanta esta pieza de código, utilizarlo para cargar un archivo en una cadena:
File file = new File("/my/location");
String contents = new Scanner(file).useDelimiter("\\Z").next();
Para leer líneas desde.archivo txt con encoding UTF-8
:
File krokiPath = new File("Records\Record");
BufferedReader in = new BufferedReader(
new InputStreamReader(new FileInputStream(krokiPath), "UTF8"));
while((r = in.readLine()) != null) {
System.out.println(r);
}
in.close();
Sí, lo probé. Uso caracteres como "ąśćłżóź" y funciona perfectamente bien. Sin eso, no podría usar este chars. –
Interessting. Gracias. – Tom
Una cosa más. Funciona solo para aplicaciones/objetos compatibles con UTF-8 :) –
public class PassdataintoFile {
public static void main(String[] args) throws IOException {
try {
PrintWriter pw = new PrintWriter("C:/new/hello.txt", "UTF-8");
PrintWriter pw1 = new PrintWriter("C:/new/hello.txt");
pw1.println("Hi chinni");
pw1.print("your succesfully entered text into file");
pw1.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BufferedReader br = new BufferedReader(new FileReader("C:/new/hello.txt"));
String line;
while((line = br.readLine())!= null)
{
System.out.println(line);
}
br.close();
}
}
Hola y bienvenidos a StackOverflow. Tómese un momento para leer la página de ayuda, especialmente las secciones tituladas ["¿Qué temas puedo preguntar aquí?"] (Http://stackoverflow.com/help/on-topic) y ["¿Qué tipo de preguntas debo hacer? evitar preguntar? "] (http://stackoverflow.com/help/dont-ask). Y, lo que es más importante, lea [la lista de comprobación de preguntas sobre el desbordamiento de pila] (http://meta.stackexchange.com/q/156810/204922). También es posible que desee obtener más información sobre [Ejemplos mínimos, completos y verificables] (http://stackoverflow.com/help/mcve). –
En Java 8, se puede leer un archivo completo, simplemente con:
public String read(String file) throws IOException {
return new String(Files.readAllBytes(Paths.get(file)));
}
o si es un recurso:
public String read(String file) throws IOException {
URL url = Resources.getResource(file);
return Resources.toString(url, Charsets.UTF_8);
}
Abajo es el código que puede intentar leer un archivo y mostrar en java utilizando la clase de escáner. El código leerá el nombre del archivo del usuario e imprimirá los datos (archivos VIM del Bloc de notas).
import java.io.*;
import java.util.Scanner;
import java.io.*;
public class TestRead
{
public static void main(String[] input)
{
String fname;
Scanner scan = new Scanner(System.in);
/* enter filename with extension to open and read its content */
System.out.print("Enter File Name to Open (with extension like file.txt) : ");
fname = scan.nextLine();
/* this will reference only one line at a time */
String line = null;
try
{
/* FileReader reads text files in the default encoding */
FileReader fileReader = new FileReader(fname);
/* always wrap the FileReader in BufferedReader */
BufferedReader bufferedReader = new BufferedReader(fileReader);
while((line = bufferedReader.readLine()) != null)
{
System.out.println(line);
}
/* always close the file after use */
bufferedReader.close();
}
catch(IOException ex)
{
System.out.println("Error reading file named '" + fname + "'");
}
}
}
- 1. C# - Lectura de texto en ruso desde un archivo .txt
- 2. cómo sobrescribir datos en un archivo txt?
- 3. Lectura de datos CSV de un archivo
- 4. Lectura de un archivo txt Matrix y almacenamiento como una matriz
- 5. PHP - analizar un archivo txt
- 6. ¿Puedo leer un archivo .TXT con PHP?
- 7. XSLT insertando un archivo TXT
- 8. Adjuntar un archivo txt en
- 9. Java: Lectura de imágenes y visualización como ImageIcon
- 10. Leer carrozas de un archivo .txt
- 11. Cómo arrastrar y soltar un archivo '.txt' en obj-c
- 12. Poner un archivo .txt en un DataGridView
- 13. borrado todos los datos de archivo txt - php
- 14. la lectura de un archivo SquashFS
- 15. E/S de archivo: Lectura de un archivo y escritura en otro (Java)
- 16. Visualización de datos científicos y .NET framework
- 17. Cómo crear y escribir en un archivo txt usando VBA
- 18. ¿Cómo leo y edito un archivo .txt en C#?
- 19. Lectura y uso de un archivo de configuración personalizado
- 20. Cómo abrir un archivo txt y leer números en Java
- 21. Modificar un archivo .txt en Java
- 22. Abrir archivo de solo lectura
- 23. Importar datos de txt a Mathematica
- 24. Lectura de datos del archivo en la matriz
- 25. Cómo leer en un archivo txt
- 26. ¿Hay alguna forma de leer un archivo .txt y almacenar cada línea en la memoria?
- 27. Visualización de datos y análisis de datos utilizando bibliotecas webGL?
- 28. La lectura de un archivo de texto con jQuery
- 29. Crear un nuevo archivo txt usando VB.NET
- 30. Lectura y escritura de vectores C++ en un archivo
algo más de información en la pregunta probablemente ayudará a obtener mejores respuestas. La información sobre lo que sabe, lo que cree que sabe, etc. puede ayudar a identificar si hay preguntas específicas. –