Boa noite,
Estou aprendendo programação orientada a objetos e tenho que fazer um programa de validação de inscrição estadual, onde o programa vai receber um numero de inscrição e um estado e vai confirmar se esse numero é valido ou não de acordo com a regra para validação de cada estado.
Estou fazendo somente o estado de são paulo acredito já ter terminado os cálculos para validação só que ao executar aparecem alguns erros, irei colocar o código do programa e os erros em questão.
package aplicacaocliente;
public class InscricaoEstadual {
static String pesos =“1,3,4,5,6,7,8,10”;
public static boolean ValidarInscricaoEstadual(String p_Inscricao, String p_Estado){
if (p_Estado == “SP”){
return ValidarIE_SP(p_Inscricao);
}
return true;
}
// validando o código de são paulo
public static boolean ValidarIE_SP(String p_Inscricao){
int resultadoDigito9 = 0;
int resultadoDigito12 = 0;
int i;
//p_Inscricao = "110042490114";// exemplo de numero de inscrição
// calculo para verificação do 9° digito
for (i = 0 ; i<8 ; i++)
{
resultadoDigito9 = resultadoDigito9 + ( Integer.parseInt(p_Inscricao.substring(i, i)) * Integer.parseInt(pesos.substring(i, i)) ) ;
}
int resultadomodulo = resultadoDigito9 % 11;
if (resultadomodulo == 10){
resultadomodulo = 0;
}
if ( resultadomodulo != Integer.parseInt(p_Inscricao.substring(8))){
return false;
}
// calculo para verificação do 12° digito
for (i = 0 ; i<11 ; i++)
{
resultadoDigito12 = resultadoDigito12 + ( Integer.parseInt(p_Inscricao.substring(i, i)) * Integer.parseInt(pesos.substring(i, i)) ) ;
}
resultadomodulo = resultadoDigito12 % 11;
if (resultadomodulo == 10){
resultadomodulo = 0;
}
if ( resultadomodulo != Integer.parseInt(p_Inscricao.substring(11)) ){
return false;
}
return true;
}
}
package aplicacaocliente;
public class AplicacaoCliente {
public static void main(String[] args) {
//JFCadastroCliente objCadastroCliente = new JFCadastroCliente();
//objCadastroCliente.setVisible(true);
InscricaoEstadual objInscricaoEstadual = new InscricaoEstadual();
objInscricaoEstadual.ValidarInscricaoEstadual("123002516539", "SP");
}
}
e agora os erros ao tentar executar o código:
Exception in thread “main” java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:592)
at java.lang.Integer.parseInt(Integer.java:615)
at aplicacaocliente.InscricaoEstadual.ValidarIE_SP(InscricaoEstadual.java:24)
at aplicacaocliente.InscricaoEstadual.ValidarInscricaoEstadual(InscricaoEstadual.java:7)
at aplicacaocliente.AplicacaoCliente.main(AplicacaoCliente.java:11)
C:\Users\Anderson\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
Qualquer ajuda é bem vinda.
Desde já Agradeço.