Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- import java.io.*;
- public class terremoto{
- public static void main(String[]args)throws IOException{
- String[] data = datosArchivos();
- imprimeDatos(data,data.length);
- consultaCiudad(data,data.length);
- }
- /* metodo"datosArchivos", que lee el archivo "TERREMOTO.TXT" y envia
- * toda la info al arreglo "eventos", con un orden distinto
- * este arreglo contempla la primera lineal del archivo(los nombres de campo), pero
- * las siguientes lineas van en orden inverso. por ejemplo la siguiente fila
- * corresponde a la ultima del archivo, la que sigue en el arreglo es la penultima del archivo, etc*/
- public static String[] datosArchivos() throws IOException{
- File archivo = new File("Archivos/TERREMOTO.txt");
- Scanner text = new Scanner(archivo);
- String[] evento;
- int counter = 0;
- while(text.hasNextLine()){
- counter++;
- text.nextLine();
- }text = new Scanner(archivo);
- evento = new String[counter];
- evento[0] = text.nextLine();
- while(text.hasNextLine()){
- counter--;
- evento[counter] = text.nextLine();
- }return evento;
- }
- /*metodo "imprimeDatos" que acepta como parametros el arreglo anterior
- * y su dimension e imprime en pantalla el contenido del arreglo */
- public static void imprimeDatos(String[] data,int length){
- for(int i = 0;i < length;i++){
- System.out.println(data[i]);
- }
- }
- /* metodo "consultaCiudad" que acepta los mismos parametros que el metodo anterior y
- * solicita al usuario el nombre de una localidad. si ingresa nulo o una serie de blancos
- * el programa debe enviar un mensaje de error (gestionado como error de excepcion!!)
- * si la localidad no existe. Con un nombre de localidad valida, enviara a pantalla todos
- * los registros que contienen esa localidad */
- public static void consultaCiudad(String[] data,int length){
- Scanner tec = new Scanner(System.in);
- String local = null;
- boolean error = true;
- while(error){
- try{
- System.out.print("Ingrese una localidad: ");
- local = tec.nextLine();
- if (local.equalsIgnoreCase("San Antonio") || local.equalsIgnoreCase("Valparaiso") || local.equalsIgnoreCase("Navidad") || local.equalsIgnoreCase("Pichilemu") || local.equalsIgnoreCase("Curico") || local.equalsIgnoreCase("Cobquecura") || local.equalsIgnoreCase("Constitucion") || local.equalsIgnoreCase("Melipilla")){
- error = false;
- }else{
- throw new Exception();
- }
- }catch(Exception ex){
- System.out.println("Error. La localidad ingresada no es valido.");
- }
- }int index = 0;
- String localTerr;
- for(int i = 1;i < length;i++){
- index = data[i].indexOf("de")+3;
- localTerr = data[i].substring(index);
- if(local.equalsIgnoreCase(localTerr)){
- System.out.println(data[i]);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement