Guest User

Untitled

a guest
Jan 21st, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.97 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.FileNotFoundException;
  3. import java.io.PrintWriter;
  4. import java.util.Scanner;
  5. public class GestionDeFlota {
  6.  
  7. public static Vehiculo [] flota = new Vehiculo[100];
  8. public static int contador = 0;
  9. public static Scanner scTeclado = new Scanner(System.in);
  10.  
  11. public static void main(String[] args) {
  12. // primero se debe crear el fichero caso contrario da ERROR
  13. leerDatos(); // Iniciar lectura de Fichero de datos Vehiculos
  14.  
  15. int opcion = 0;
  16.  
  17. do{
  18.  
  19. System.out.println("==================================================");
  20. System.out.println("1) Listar los vehículos");
  21. System.out.println("2) Insertar un vehiculo");
  22. System.out.println("3) Borrar un vehiculo");
  23. System.out.println("4) Guardar los datos");
  24. System.out.println("5) Salir");
  25.  
  26. opcion = scTeclado.nextInt();
  27. scTeclado.nextLine();
  28.  
  29. switch( opcion ){
  30. case 1 : listarVehiculo();
  31. break;
  32. case 2 : insertarVehiculo();
  33. break;
  34. case 3 :
  35. break;
  36. case 4 : guardarDatos();
  37. break;
  38. }
  39.  
  40. }while(opcion != 5);
  41.  
  42. guardarDatos();
  43.  
  44. System.out.println("Hasta luego Lucas.");
  45.  
  46. }
  47.  
  48. public static void insertarVehiculo(){
  49. System.out.println("==================================================");
  50. System.out.println("Introduzca los datos del nuevo vehículo.");
  51. System.out.println("Matrícula:");
  52. String matricula = scTeclado.nextLine();
  53. System.out.println("Marca:");
  54. String marca = scTeclado.nextLine();
  55. System.out.println("Modelo:");
  56. String modelo = scTeclado.nextLine();
  57. System.out.println("Color:");
  58. String color = scTeclado.nextLine();
  59.  
  60. Vehiculo v = new Vehiculo();
  61. v.matricula = matricula;
  62. v.marca = marca;
  63. v.modelo = modelo;
  64. v.color = color;
  65.  
  66. flota[contador] = v;
  67. contador++;
  68.  
  69. }
  70.  
  71. public static void guardarDatos(){
  72.  
  73. System.out.println("==================================================");
  74. try {
  75. PrintWriter out = new PrintWriter("vehiculos.txt");
  76. for(int a=0; a<contador; a++){
  77. Vehiculo v = flota[a];
  78. String linea = v.concatenarDatos();
  79. out.println(linea);
  80. }
  81. out.close();
  82. System.out.println("El fichero se ha guardado con éxito");
  83. } catch (FileNotFoundException e) {
  84. e.printStackTrace();
  85. System.out.println("ERROR AL ESCRIBIR EL FICHERO!");
  86. }
  87.  
  88.  
  89. }
  90. public static void listarVehiculo(){
  91. System.out.println("________________________________________");
  92. System.out.println(" listado de datos del nuevo vehiculo ");
  93. for(int a=0;a<contador;a++){
  94.  
  95. Vehiculo v = flota[a];
  96. System.out.println(v.concatenarDatos());
  97. };
  98.  
  99. }
  100. public static void leerDatos(){
  101. // Sub proceso de lectura de Datos del Fichero
  102. System.out.println("===================================== ===");
  103. try {
  104. Scanner scFichero = new Scanner(new File("vehiculos.txt"));
  105.  
  106. while(scFichero.hasNextLine()){
  107. String linea = scFichero.nextLine();
  108. String[] cachos =linea.split(","); // Trozea la linea por las (,) o ("") o (Tab) y crea una array
  109.  
  110. Vehiculo v = new Vehiculo();
  111. v.matricula = cachos[0];
  112. v.marca = cachos[1];
  113. v.modelo =cachos[2];
  114. v.color = cachos[3];
  115.  
  116. // almacena en Arrays
  117. flota[contador]= v;
  118. contador++;
  119. };
  120. scFichero.close(); // Cierra el fichero abierto
  121. }
  122. catch (FileNotFoundException e) {
  123. e.printStackTrace();
  124. System.out.println("ERROR AL LEER EL FICHERO!");
  125. }
  126.  
  127.  
  128.  
  129.  
  130. };
  131.  
  132. }
Add Comment
Please, Sign In to add comment