Bueno amigos mi problema es que mi profesor de la Universidad me mando a hacer un cajero automatico, y lo hice, ahora quiere que lo haga con archivos.
EL problema es que el dijo que simule una tarjeta; entonces supuestamente la tarjeta deberia ingresar, y luego ser validada con el archivo, luego validar las contraseñas y eso no me sale porfavor alguna ayuda?
#package cajero.automatico;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
/**
*
* @author Charlie Cárdenas
*/
public class ejecutor2 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int nc = 0, h = 0, nIntentos = 0, mov = 0, op;
String password = "";
boolean error, enc = false;
//Variables a usar en la clase ejecutora
Cuenta objCuenta = new Cuenta();
System.out.println("============================== ======================");
System.out.println("|| COOPERATIVA DE AHORRO Y CREDITO 'COOPMEGO' ||");
System.out.println("|| ||");
System.out.print("|| Ingresa tu tarjeta: ");
String direccion = sc.next();
System.out.print("|| Verificando.... ||\n");
LeerTarjeta(direccion);
do {
try {
LeerTarjeta(direccion);
if (LeerTarjeta(direccion).equals(direccion)) {
System.out.println("|| Enhorabuena ||");
}
} catch (Exception e) {
error = true;
System.err.println("Tarjeta invalida, porfavor Ingresa otra ");
}
} while (error = false);
LeerTarjeta(direccion);
System.out.print("|| Ingrese su contraseña: ");
password = sc.next();
if (password.equals(LeerTarjeta(direccion))) {
System.out.println("dentro");
System.out.println("============================== ======================");
System.out.println("|| Menu Opciones ||");
System.out.println("||ªªªªªªªªªªªªªªªªªªªªªªªªªªªª ªªªªªªªªªªªªªªªªªªªª||");
System.out.println("|| 1. Retirar ||");
System.out.println("|| 1. Transferencia ||");
} else {
System.out.println("fuera");
}
//Bloque que realiza la funcion de comprobar la contaseña ingresada por el
//usuario permitiendole solo un maximo de tres intentos
//
// // do {
// // Base[h].info();
// // do {
// System.out.println("Escoja una opcion entre 1 y 4");
// op = sc.nextInt();
// } while ((op < 1) || (op > 4));
///
// switch (op) {
// case 1:
// do {
// error = false;
// System.out.println("Ingrese la cantidad");
// try {
// mov = sc.nextInt();
// } catch (NumberFormatException e) {
// System.out.println("Ingrese solo numeros");
// error = true;
// }
// } while (error);
// if ((mov < 5) || (mov > 200)) {
// System.out.println("El monto minimo de retiro es de 5$ y el max de 200$");
// }//LLave del if
// else if (Base[h].Retiro(mov)) {
// System.out.println("Operacion realizada con exito");
// } else {
// System.out.println("No cuenta con saldo suficiente");
// }//llave del else
// break;
//
// case 2:
// do {
// error = false;
// System.out.println("Ingrese la cantidad");
// try {
// mov = sc.nextInt();
// } catch (NumberFormatException e) {
// System.out.println("Ingrese solo numeros");
// error = true;
// }
// } while (error);
// do {
// error = false;
// System.out.println("Ingrese numero de cuenta a la que va a enviar");
// try {
// nc = sc.nextInt();
// } catch (NumberFormatException e) {
// error = true;
// System.out.println("No debe ingresar ninguna letra");
// System.out.println("Vuelva a ingresar el numero de cuenta");
// }
// } while (error);
// if (Base[h].Transferencia(mov)) {
// System.out.println("Operacion realizada con exito");
// } else {
// System.out.println("No cuenta con saldo suficiente");
// }
// break;
//
// case 3:
// Base[h].Consulta();
// break;
//
// }//switch
//
// } while (op < 4);
}
private static String LeerTarjeta(String direccion) throws FileNotFoundException, IOException {
BufferedReader bf = new BufferedReader(new FileReader(direccion));
String temp = "";
//Usuario, NoCuenta, Cuenta, pass, saldo
String usuario;
String noCuenta;
String cuenta;
String pass;
String saldo;
String linea;
while ((linea = bf.readLine()) != null) {
for (int i = 0; i < 5; i++) {
switch (i) {
case 0:
usuario = bf.readLine();
break;
case 1:
noCuenta = bf.readLine();
break;
case 2:
cuenta = bf.readLine();
break;
case 3:
pass = bf.readLine();
break;
case 4:
saldo = bf.readLine();
break;
default:
}
}
}
bf.close();
return direccion;
}
}