Código fuente del artículo digital

Importar texto de Java .

Importar formato de número de Java . inputstream;

Importar texto Java. formato decimal;

Importar texto Java. >Computadora pública(){

}

/**

*

*Reparar el número de tarjeta de identificación de 15 residentes a 18 dígitos número.

*

* @param personIDCode

*

* @return

*/

Cadena estática pública fixPersonIDCode(String PersonIDCode)

{

Cadena retIDCode =

if(personIDCode == null | | personIDCode . trim(). length()! = 15) {

devolver personIDCode

}

id de cadena 17 = personidcode(0, 6) "19 "

personIDCode.substring(6, 15); // 15 reemplazo de tarjeta de identificación \'19\ '

// char[] code =

/ /{\'1\ ',\'0\ ',\'X\ ',\'9\ ',\'8\ ',\'7\ ',\'6\ ',\'5\ ', \'4\ ', \'3\ ', \ '2 \ ' };

/// 01 piezas.

código char[] = {'1','0','X','9','8','7','6','5','4',' 3 ', ' 2 ' }; // 11

int[] factor = { 0, 2, 4, 8, 5, 10, 9, 7, 3, 6, 1, 2, 4, 8, 5, 10, 9, 7 }; // 18;

int[]idcd = nuevo int[18]; int j;

int suma

int resto;

for(I = 1;i lt18;i)

{

j = 17-I;

idcd[I]= entero . parse int(id 17 . substring(j, j 1));

}

}

p>

suma = 0;

for(I = 1;ilt18;i)

{

suma = suma idcd[I]* factor[I];

}

Restante = suma 11;

cadena último bit de verificación = cadena . valor de(código[resto]);

p>

ID de retorno 17 último bit de verificación;

}

/**

*

*La sentencia es un número de identificación de residente válido de 18 dígitos o 15 dígitos.

*

* @param identidadId

*: número de DNI de los residentes de 18 o 15 años.

*

* @ return: true: Número de identificación válido de un residente de 18 o 15 años.

*/

Booleano estático público isIdentityId(String IdentityId){

if (isEmpty(identityId))

Devuelve falso

p>

Pruebe {

if(id de identidad. longitud()= = 18){

ID de identidad de cadena 15 = subcadena de identidad (0. , 6)

identidadId.substring(8, 17);

//system . println("la identificación de identidad 15 es: "la identificación de identidad 15);

if (fixPersonIDCode(id de identidad 15).

equalsIgnoreCase(identityId)) {

Devuelve verdadero

} En caso contrario {

Devuelve falso

}

} else if(identity id . length()= = 15){

Prueba {

long . parse long(identity id);

Devuelve verdadero

p>

} catch (Excepción ex) {

Devuelve falso

}

} De lo contrario {

Devuelve falso

}

} captura (Excepción ex) {

devuelve falso

}

}

/**

*

*Determinar si es una cadena vacía""

*/

El booleano estático público está vacío (String sValue){

if (sValue == null)

Devuelve verdadero

Devuelve sValue.trim(). ¿Igual a (" ")? verdadero: falso;

}

Public static void main(String[] args) {

prueba {

system. println(fixPersonIDCode(" 650103760113073 ")); // tarjeta de identificación 15 a 18.

system . out . println(isIdentityId(" 650103760113073 ")); //No es un número de identificación válido de 15 dígitos.

} catch(Excepción e) {

e .printstacktrace();

}

}

. }

type="text/javascript" src="../css/tongji.js">