Existen las siguientes formas de abrir un archivo en Java:
- Clase de escritorio Java
- Clase Java FileInputStream
- Clase Java BufferedReader
- Clase Java FileReader
- Clase de escáner Java
- paquete java nio
Clase de escritorio Java
La clase Java Desktop proporciona una abierto() Método para abrir un archivo. pertenece a un java.awt paquete. La implementación del escritorio depende de la plataforma, por lo que es necesario verificar si el sistema operativo es compatible con el escritorio o no. La clase Escritorio busca una aplicación asociada registrada en el escritorio nativo para manejar un archivo. Si no hay ninguna aplicación asociada o la aplicación no se puede iniciar, arroja el Excepción de archivo no encontrado . Inicia el navegador predeterminado del usuario para mostrar un URI específico.
- Inicia el cliente de correo predeterminado del usuario con un URI de correo opcional.
- Inicia la aplicación registrada para abrir, editar o imprimir un archivo específico.
El abierto() El método de la clase Desktop inicia la aplicación asociada para abrir un archivo. Toma un archivo como argumento. La firma del método es:
public void open (File file) throws IOException
El método arroja las siguientes excepciones:
ordenar una lista de matrices
Ejemplo
import java.awt.Desktop; import java.io.*; public class OpenFileExample1 { public static void main(String[] args) { try { //constructor of file class having file as argument File file = new File('C:\demo\demofile.txt'); if(!Desktop.isDesktopSupported())//check if Desktop is supported by Platform or not { System.out.println('not supported'); return; } Desktop desktop = Desktop.getDesktop(); if(file.exists()) //checks file exists or not desktop.open(file); //opens the specified file } catch(Exception e) { e.printStackTrace(); } } }
Cuando ejecutamos el programa anterior, abre el archivo de texto especificado en el editor de texto predeterminado. También podemos abrir el archivo .docx, .pdf y .webp.
Producción:
Clase Java FileInputStream
Java flujo de entrada de archivos La clase se utiliza para abrir y leer un archivo. Podemos abrir y leer un archivo usando el constructor de la clase FileInputStream. La firma del constructor es:
public FileInputStream(File file) throws FileNotFoundException
Acepta un archivo como argumento. arroja Excepción de archivo no encontrado si el archivo no existe o el nombre del archivo es un directorio.
Ejemplo
import java.io.*; import java.util.Scanner; public class OpenFileExample2 { public static void main(String args[]) { try { //constructor of file class having file as argument File file=new File('C:\demo\demofile.txt'); FileInputStream fis=new FileInputStream(file); //opens a connection to an actual file System.out.println('file content: '); int r=0; while((r=fis.read())!=-1) { System.out.print((char)r); //prints the content of the file } } catch(Exception e) { e.printStackTrace(); } } }
Producción:
los 10 mejores hentai
Clase Java BufferedReader
Java Lector almacenado en búfer La clase lee texto de una secuencia de entrada de caracteres. pertenece a un java.io paquete. Usamos el constructor de la clase BufferedReader para abrir o leer un archivo. La firma del constructor es:
public BufferedReader(Reader in)
Crea un flujo de entrada de caracteres en búfer que utiliza un búfer de entrada de tamaño predeterminado. Utiliza un búfer de entrada de tamaño predeterminado.
15 de 100.00
Ejemplo
import java.io.*; import java.util.Scanner; public class OpenFileExample3 { public static void main(String args[]) { try { //constructor of File class having file as argument File file=new File('C:\demo\demofile.txt'); //creates a buffer reader input stream BufferedReader br=new BufferedReader(new FileReader(file)); System.out.println('file content: '); int r=0; while((r=br.read())!=-1) { System.out.print((char)r); } } catch(Exception e) { e.printStackTrace(); } } }
Producción:
Clase Java FileReader
Java Lector de archivos La clase también se utiliza para abrir y leer un archivo. pertenece a un java.io paquete. Es una comodidad para leer caracteres de los archivos. Se utiliza para leer bytes sin formato utilizando la clase FileInputStream. Usamos el constructor de la clase FileInputStream para abrir y leer un archivo. La firma del constructor es:
public FileReader(File file) throws FileNotFoundException
Acepta un archivo como argumento. arroja el Excepción de archivo no encontrado si el archivo especificado no existe o el nombre del archivo es un directorio.
Ejemplo
import java.io.*; public class OpenFileExample4 { public static void main(String args[]) { try { //constructor of the File class having file as an argument FileReader fr=new FileReader('C:\demo\demofile.txt'); System.out.println('file content: '); int r=0; while((r=fr.read())!=-1) { System.out.print((char)r); //prints the content of the file } } catch(Exception e) { e.printStackTrace(); } } }
Producción:
Clase de escáner Java
Java Escáner La clase también se utiliza para abrir y leer un archivo. La clase Escáner pertenece a java.util paquete. El constructor de la clase Scanner se utiliza para abrir y leer un archivo. La firma del constructor es:
public scanner (File source) throws FileNotFoundException
Acepta un archivo (para ser escaneado) como argumento. tambien tira Excepción de archivo no encontrado , si no se encuentra la fuente del archivo.
Ejemplo
import java.io.File; import java.util.Scanner; public class OpenFileExample5 { public static void main(String[] args) { try { File file=new File('C:\demo\demofile.txt'); Scanner sc = new Scanner(file); //file to be scanned while (sc.hasNextLine()) //returns true if and only if scanner has another token System.out.println(sc.nextLine()); } catch(Exception e) { e.printStackTrace(); } } }
Producción:
paquete java nio
método leerAllLines() : El método readAllLines() es el método de la clase Archivo. Lee todas las líneas de un archivo y los bytes del archivo se decodifican en caracteres utilizando el juego de caracteres UTF-8. Devuelve las líneas del archivo como una lista. La firma del método es:
cadena java con formato
public static List readAllLines(Path path) throws IOException
Donde ruta es la ruta del archivo.
El método anterior equivale a invocar lo siguiente:
File.readAllLines(path, Standard CharSets.UTF_8)
Colecciones.emptyList(): El método vacíaList() es el método de la clase Colección que pertenece al paquete java.util. Se utiliza para obtener una lista vacía. La firma del método es:
public static final List emptyList()
Ejemplo
import java.util.*; import java.nio.charset.StandardCharsets; import java.nio.file.*; import java.io.*; public class OpenFileExample6 { public static List readFileInList(String fileName) { List lines = Collections.emptyList(); try { lines=Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8); } catch (IOException e) { e.printStackTrace(); } return lines; } public static void main(String[] args) { List l = readFileInList('C:\demo\demofile.txt'); Iterator itr = l.iterator(); //access the elements while (itr.hasNext()) //returns true if and only if scanner has another token System.out.println(itr.next()); //prints the content of the file } }
Producción: