Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static boolean validarCui(String cui) {
- int contadorDigitos = 0;
- boolean cuiValido = false;
- String ultimosCuatroDigitos;
- //Validamos que el CUI tenga 13 caracteres para que sea correcto
- if (cui.length() == 13) {
- for (int i = 0; i < cui.length(); i++) {
- //Validamos que el primer caracter no sea cero
- if (i == 0) {
- switch (cui.charAt(i)) {
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- contadorDigitos++;//Si son todos numeros 1-9 se aumenta el contador
- break;
- }
- }
- //Validamos que los digitos de las posiciones 1-12 sean todos digitos
- switch (i) {
- case 1:
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- case 8:
- case 9:
- case 10:
- case 11:
- case 12:
- switch (cui.charAt(i)) {
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- contadorDigitos++;//Si son todos digitos 0-9 se aumenta el contador
- break;
- }
- }
- }
- } else {
- System.out.println("Ingrese un cui correcto");
- }
- ultimosCuatroDigitos = cui.substring(9);
- if (contadorDigitos == cui.length()) {//Validamos que el tamaño del contador sea igual que el cui
- if (!buscarEnArchivo(ultimosCuatroDigitos)) {//Se llama la funcion buscarEnArchivo para validar que los ultimos cuatro digitos se encuentren en el archivo
- cuiValido = false; //Se cambia a false cuando los ultimos 4 digitos no existen en el archivo
- } else {
- cuiValido = true;//Si encuentra los cuatro digitos se cabia a true
- }
- }
- return cuiValido;
- }
- public static boolean buscarEnArchivo(String ultimosCuatroDigitos) {
- //String archivo = "DepartamentosMunicipios.txt";//Variable con el nombre del archivo donde se encuentran los codigos
- boolean codigoEncontrado = false;
- //Abrimos el archivo para lectura
- try {
- BufferedReader br = new BufferedReader(new FileReader("DepartamentosMunicipios.txt"));
- String linea;
- //Leemos cada linea del archivo para comprobar que los ultimos 4 caracteres del cui existan en el archivo
- while ((linea = br.readLine()) != null) {
- if (linea.length() >= 4) {//Verifica si la linea tiene por lo menos 4 caracteres y a partir de esto se crea el siguiente substring
- String codigo = linea.substring(0, 4);//Crea un sub string con los 4 primeros caracteres de la linea
- if (codigo.equals(ultimosCuatroDigitos)) {//compara si los 4 caracteres de la linea son iguales a los ultimos 4 caracteres del CUI
- codigoEncontrado = true;
- break;
- }
- }
- }
- } catch (IOException e) {
- System.out.println("No se encontro el archivo");
- }
- return codigoEncontrado;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement