De programación java: la lectura de un archivo

Muchos programas Java leen los caracteres desde el teclado del ordenador. Estos programas utilizan cosas como Escáner, System.in, y nextDouble - cosas definidas en la API de Java. los DoPayroll programa en esta lista da un nuevo giro en esta historia. En lugar de leer caracteres desde el teclado, el programa lee los caracteres de la EmployeeInfo.txt archivo. El archivo reside en el disco duro de su ordenador.

DoPayroll clase de importación java.util.Scanner-importación e importación java.io.File java.io.IOException pública {void Main (args String []) public static throws IOException {Escáner diskScanner = nuevo escáner (nuevo archivo ("EmployeeInfo.txt")) - for (int empnum = 1- empnum lt; = 3- empnum ++) {payOneEmployee (diskScanner) -} diskScanner.close () -} estática payOneEmployee void (aScanner escáner) {Empleado anEmployee = new Employee () - anEmployee.setName (aScanner.nextLine ()) - anEmployee. setJobTitle (aScanner.nextLine ()) - anEmployee.cutCheck (aScanner.nextDouble ()) - aScanner.nextLine () -}}

Para leer caracteres de un archivo, utiliza algunas de las mismas cosas que le ayudan a leer caracteres desde el teclado. Tu usas Escáner, nextDouble, y otras golosinas. Pero además de estas golosinas, tiene algunos obstáculos adicionales para saltar. He aquí una lista:

  • Tu necesitas un archivo nuevo objeto. Para ser más precisos, se necesita una nueva instancia de la década de API Archivo clase. Se obtiene esta nueva instancia con el código como

    archivo nuevo("EmployeeInfo.txt")

    Las cosas entre comillas es el nombre de un archivo - un archivo en el disco duro de su ordenador. El archivo contiene caracteres.

    En este punto, la terminología hace una montaña de un grano de arena. Sin duda, las frases archivo nuevo objeto y archivo nuevo ejemplo Aparecer, pero todo lo que está haciendo es hacer nuevo archivo ( “EmployeeInfo.txt”) presentarse a un archivo en el disco duro. Después de usted empuja nuevo archivo ( “EmployeeInfo.txt”) dentro nuevo escáner,

    Escáner diskScanner = nuevo escáner (nuevo archivo ("EmployeeInfo.txt")) -

    usted puede olvidarse de la archivo nuevo negocio. A partir de ese momento en el código, diskScanner representa el EmployeeInfo.txt nombre del archivo en el disco duro de su ordenador. (El nombre diskScanner representa un archivo en el disco duro del mismo modo, en los ejemplos anteriores, el nombre teclado éstos son los botones que se presionan día tras día de salida.)

    Creando un archivo nuevo objeto en la lista es como crear una nuevo empleado objetar más tarde en la misma lista. La única diferencia es que el Empleado y Cuenta clases se definen en los ejemplos de este libro. los Archivo clase se define en la API de Java.

    Cuando se conecta a un archivo de disco con nuevo escáner, no se olvide de la archivo nuevo parte. Si se escribe nuevo escáner ( “EmployeeInfo.txt”) sin archivo nuevo, el compilador no le importará. (Usted no recibirá una advertencia o mensaje de error antes de ejecutar el código.) Sin embargo, cuando se ejecuta el código, usted no conseguirá nada parecido a los resultados que espera obtener.

  • Debe referirse a la Archivo clase por su nombre completo - java.io.File. Usted puede hacer esto con una declaración de importación como el de la lista. Como alternativa, puede estorbar encima de su código con una declaración como

    Video: Java 14 Course | Чтение и запись файлов

    Escáner diskScanner = new escáner (nuevo java.io.Archivo("EmployeeInfo.txt")) -
  • Tu necesitas un throws IOException cláusula. Muchas cosas pueden ir mal cuando su programa se conecta a EmployeeInfo.txt. Por un lado, el disco duro puede no haber un archivo llamado EmployeeInfo.txt.

    Video: Curso Java. Streams I. Accediendo a ficheros. Lectura. Vídeo 152

  • Por otra parte, el archivo EmployeeInfo.txt puede estar en el directorio equivocado. Para prepararse para este tipo de calamidad, el lenguaje de programación Java toma ciertas precauciones. El lenguaje insiste en que cuando un archivo de disco está implicado, usted reconoce los posibles peligros de la llamada nuevo escáner.

    Puede reconoce los peligros de varias maneras posibles, pero la forma más sencilla es utilizar una lanza cláusula. En el perfil, la principal cabecera del método termina con las palabras throws IOException. Mediante la adición de estas dos palabras, que apaciguar al compilador de Java.

    Es como si usted está diciendo “Yo sé que llamar nuevo escáner puede conducir a problemas. Usted no tiene que recordarme.”Y, por supuesto, la adición throws IOException para usted principal método mantiene el compilador de las protestas. (Sin esto lanza cláusula, se obtiene una excepción no declarada mensaje de error.)

Artículos Relacionados