jdk descargar actualizar java

java - descargar - Lectura y visualización de datos de un archivo.txt



java offline (10)

A continuación se muestra 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 + "''"); } }

}

¿Cómo se leen y visualizan los datos de los archivos .txt?


En Java 8, 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); }


En general:

  • Crea un FileInputStream para el archivo.
  • Cree un InputStreamReader envuelva la secuencia de entrada, especificando la encoding correcta
  • Opcionalmente, cree un BufferedReader en el InputStreamReader , lo que simplifica la lectura de una línea a la vez.
  • Lea hasta que no haya más datos (por ejemplo, readLine devuelve nulo)
  • Visualice datos sobre la marcha o búfer para más tarde.

Si necesita más ayuda que eso, sea más específico en su pregunta.


Lo más probable es 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);

También querrá ver algunas de las excepciones arrojadas por el método read () y el constructor FileInputStream, pero esos son detalles de implementación específicos de su proyecto.


Me encanta este fragmento de código, utilízalo 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 del archivo .txt con la 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();


Si desea tomar algunos accesos directos, puede utilizar Apache Commons IO :

import org.apache.commons.io.FileUtils; String data = FileUtils.readFileToString(new File("..."), "UTF-8"); System.out.println(data);

:-)


Si su archivo es estrictamente de texto, prefiero usar la clase java.util.Scanner .

Puede crear un java.util.Scanner de un archivo de la siguiente manera:

Scanner fileIn = new Scanner(new File(thePathToYourFile));

Luego, 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, puedes verificar si queda 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 haya leído el texto y lo haya guardado en una String , puede imprimir la cadena a la línea de comando con:

System.out.print(aString); System.out.println(aString);

El enlace publicado contiene la especificación completa para la clase de escáner. Será útil ayudarlo con cualquier otra cosa que desee hacer.


BufferedReader in = new BufferedReader(new FileReader("<Filename>"));

Luego, puede usar 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();


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(); } }