Duvida

1 resposta
C

Gostaria de saber como eu posso fazer uma atualização no banco de dados mysql tendo como um arquivo txt que vai importar os dados para mysql, mas tem um probleminha os campos são quebrados por tokens na minha codificação utilizei o StringTokenizer mas na hora de dar o insert aparece um mensagem dizendo não é possivel ler as linhas do arquivo txt...

abaixo segue a minha codificação:
Obrigado pela ajuda.....

import java.io.*;
import java.io.BufferedReader;
import java.io.File;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Pessoa {
        
    
    	private Connection con;
    	private String sql = "";
    	public Statement stmt;
    	private String req = ""; 
        
        private String EMPRESA = "";
        private String FILIAL = "";
        private String MATRICULA = "";
        private String NOME = "";
        private String DT_NASC = "";
        private String NOME_CARGO = "";
        private String CARGO_ANO = "";
        private String CARGO_MÊS = "";
        private String CCUSTO = "";
        private String NOME_CCUSTO = "";
        private String ENDERECO = "";
        private String ESTADO = "";
        private String COD_CEP = "";
        private String DDD = "";
        private String TELEFONE_1 = "";
        private String TIPO_DOCTO_IDEN = "";
        private String EST_EMIS_IDENT = "";
        private String DT_EMIS_IDENT = "";
        private String NUM_DOC_IDENT = "";
        private String CPF = "";
        private String RAMAL = "";
        private String DDD_CASA = "";
        private String CELULAR = "";
        private String TELEFONE_CASA = "";
        private String EMAIL_PRODESP = "";
        private String DDD_CEL = "";

        /**
         * @return Returns the cARGO_ANO.
         */
        public String getCARGO_ANO() {
            return CARGO_ANO;
        }
        /**
         * @param cargo_ano The cARGO_ANO to set.
         */
        public void setCARGO_ANO(String cargo_ano) {
            CARGO_ANO = cargo_ano;
        }
        /**
         * @return Returns the cARGO_MÊS.
         */
        public String getCARGO_MÊS() {
            return CARGO_MÊS;
        }
        /**
         * @param cargo_mês The cARGO_MÊS to set.
         */
        public void setCARGO_MÊS(String cargo_mês) {
            CARGO_MÊS = cargo_mês;
        }
        /**
         * @return Returns the cCUSTO.
         */
        public String getCCUSTO() {
            return CCUSTO;
        }
        /**
         * @param ccusto The cCUSTO to set.
         */
        public void setCCUSTO(String ccusto) {
            CCUSTO = ccusto;
        }
        /**
         * @return Returns the cELULAR.
         */
        public String getCELULAR() {
            return CELULAR;
        }
        /**
         * @param celular The cELULAR to set.
         */
        public void setCELULAR(String celular) {
            CELULAR = celular;
        }
        /**
         * @return Returns the cOD_CEP.
         */
        public String getCOD_CEP() {
            return COD_CEP;
        }
        /**
         * @param cod_cep The cOD_CEP to set.
         */
        public void setCOD_CEP(String cod_cep) {
            COD_CEP = cod_cep;
        }
        /**
         * @return Returns the cPF.
         */
        public String getCPF() {
            return CPF;
        }
        /**
         * @param cpf The cPF to set.
         */
        public void setCPF(String cpf) {
            CPF = cpf;
        }
        /**
         * @return Returns the dDD.
         */
        public String getDDD() {
            return DDD;
        }
        /**
         * @param ddd The dDD to set.
         */
        public void setDDD(String ddd) {
            DDD = ddd;
        }
        /**
         * @return Returns the dDD_CASA.
         */
        public String getDDD_CASA() {
            return DDD_CASA;
        }
        /**
         * @param ddd_casa The dDD_CASA to set.
         */
        public void setDDD_CASA(String ddd_casa) {
            DDD_CASA = ddd_casa;
        }
        /**
         * @return Returns the dDD_CEL.
         */
        public String getDDD_CEL() {
            return DDD_CEL;
        }
        /**
         * @param ddd_cel The dDD_CEL to set.
         */
        public void setDDD_CEL(String ddd_cel) {
            DDD_CEL = ddd_cel;
        }
        /**
         * @return Returns the dT_EMIS_IDENT.
         */
        public String getDT_EMIS_IDENT() {
            return DT_EMIS_IDENT;
        }
        /**
         * @param dt_emis_ident The dT_EMIS_IDENT to set.
         */
        public void setDT_EMIS_IDENT(String dt_emis_ident) {
            DT_EMIS_IDENT = dt_emis_ident;
        }
        /**
         * @return Returns the dT_NASC.
         */
        public String getDT_NASC() {
            return DT_NASC;
        }
        /**
         * @param dt_nasc The dT_NASC to set.
         */
        public void setDT_NASC(String dt_nasc) {
            DT_NASC = dt_nasc;
        }
        /**
         * @return Returns the eMAIL_PRODESP.
         */
        public String getEMAIL_PRODESP() {
            return EMAIL_PRODESP;
        }
        /**
         * @param email_prodesp The eMAIL_PRODESP to set.
         */
        public void setEMAIL_PRODESP(String email_prodesp) {
            EMAIL_PRODESP = email_prodesp;
        }
        /**
         * @return Returns the eMPRESA.
         */
        public String getEMPRESA() {
            return EMPRESA;
        }
        /**
         * @param empresa The eMPRESA to set.
         */
        public void setEMPRESA(String empresa) {
            EMPRESA = empresa;
        }
        /**
         * @return Returns the eNDEREÇO.
         */
        public String getENDERECO() {
            return ENDERECO;
        }
        /**
         * @param endereço The eNDEREÇO to set.
         */
        public void setENDERECO(String endereco) {
            ENDERECO = endereco;
        }
        /**
         * @return Returns the eST_EMIS_IDENT.
         */
        public String getEST_EMIS_IDENT() {
            return EST_EMIS_IDENT;
        }
        /**
         * @param est_emis_ident The eST_EMIS_IDENT to set.
         */
        public void setEST_EMIS_IDENT(String est_emis_ident) {
            EST_EMIS_IDENT = est_emis_ident;
        }
        /**
         * @return Returns the eSTADO.
         */
        public String getESTADO() {
            return ESTADO;
        }
        /**
         * @param estado The eSTADO to set.
         */
        public void setESTADO(String estado) {
            ESTADO = estado;
        }
        /**
         * @return Returns the fILIAL.
         */
        public String getFILIAL() {
            return FILIAL;
        }
        /**
         * @param filial The fILIAL to set.
         */
        public void setFILIAL(String filial) {
            FILIAL = filial;
        }
        /**
         * @return Returns the mATRICULA.
         */
        public String getMATRICULA() {
            return MATRICULA;
        }
        /**
         * @param matricula The mATRICULA to set.
         */
        public void setMATRICULA(String matricula) {
            MATRICULA = matricula;
        }
        /**
         * @return Returns the nOME.
         */
        public String getNOME() {
            return NOME;
        }
        /**
         * @param nome The nOME to set.
         */
        public void setNOME(String nome) {
            NOME = nome;
        }
        /**
         * @return Returns the nOME_CARGO.
         */
        public String getNOME_CARGO() {
            return NOME_CARGO;
        }
        /**
         * @param nome_cargo The nOME_CARGO to set.
         */
        public void setNOME_CARGO(String nome_cargo) {
            NOME_CARGO = nome_cargo;
        }
        /**
         * @return Returns the nOME_CCUSTO.
         */
        public String getNOME_CCUSTO() {
            return NOME_CCUSTO;
        }
        /**
         * @param nome_ccusto The nOME_CCUSTO to set.
         */
        public void setNOME_CCUSTO(String nome_ccusto) {
            NOME_CCUSTO = nome_ccusto;
        }
        /**
         * @return Returns the nUM_DOC_IDENT.
         */
        public String getNUM_DOC_IDENT() {
            return NUM_DOC_IDENT;
        }
        /**
         * @param num_doc_ident The nUM_DOC_IDENT to set.
         */
        public void setNUM_DOC_IDENT(String num_doc_ident) {
            NUM_DOC_IDENT = num_doc_ident;
        }
        /**
         * @return Returns the rAMAL.
         */
        public String getRAMAL() {
            return RAMAL;
        }
        /**
         * @param ramal The rAMAL to set.
         */
        public void setRAMAL(String ramal) {
            RAMAL = ramal;
        }
        /**
         * @return Returns the tELEFONE_1.
         */
        public String getTELEFONE_1() {
            return TELEFONE_1;
        }
        /**
         * @param telefone_1 The tELEFONE_1 to set.
         */
        public void setTELEFONE_1(String telefone_1) {
            TELEFONE_1 = telefone_1;
        }
        /**
         * @return Returns the tELEFONE_CASA.
         */
        public String getTELEFONE_CASA() {
            return TELEFONE_CASA;
        }
        /**
         * @param telefone_casa The tELEFONE_CASA to set.
         */
        public void setTELEFONE_CASA(String telefone_casa) {
            TELEFONE_CASA = telefone_casa;
        }
        /**
         * @return Returns the tIPO_DOCTO_IDEN.
         */
        public String getTIPO_DOCTO_IDEN() {
            return TIPO_DOCTO_IDEN;
        }
        /**
         * @param tipo_docto_iden The tIPO_DOCTO_IDEN to set.
         */
        public void setTIPO_DOCTO_IDEN(String tipo_docto_iden) {
            TIPO_DOCTO_IDEN = tipo_docto_iden;
        }
/* Busque os índices inteiros de uma linha do texto, e retorne-os em uma corda, 
 * armazenando os valores dentro do StringBuffer.
 * Este tipo de execução não joga exceções para o chamador.  
 * O parametro aFile é uma linha que já exista e possa ser lida. 
*/        
         
          public static String getContents(StringBuffer testFile) {
          StringBuffer contents = new StringBuffer(1024);

          BufferedReader input = null;
          try {
            input = new BufferedReader( new FileReader("file") );
            String line = null;
            while (( line = input.readLine()) != null){
              contents.append(line);
              contents.append(System.getProperty("line.separator"));
            }
          }
          catch (FileNotFoundException ex) {
            ex.printStackTrace();
          }
          catch (IOException ex){
            ex.printStackTrace();
          }
          finally {
            try {
              if (input!= null) {
                input.close();
              }
            }
            catch (IOException ex) {
              ex.printStackTrace();
            }
          }
          return contents.toString();
        }
        
        public static void setContents(File aFile, String aContents)
          	throws FileNotFoundException, IOException {
          if (aFile == null) {
            throw new IllegalArgumentException("Arquivo igual null.");
          }
          if (!aFile.exists()) {
            throw new FileNotFoundException ("Arquivo existe: " + aFile);
          }
          if (!aFile.isFile()) {
            throw new IllegalArgumentException("Se seja um diretório: " + aFile);
          }
          if (!aFile.canWrite()) {
            throw new IllegalArgumentException("A linha não pode ser escrita: " + aFile);
          }

          //declarado aqui para fazer somente finalmente visível à cláusula; referência genérica
          Writer output = null;
          try {
            output = new BufferedWriter( new FileWriter(aFile) );
            output.write( aContents );
          }
          finally {
            //fechamento ambos "output" e seu FileWriter subjacente
            if (output != null) output.close();
          }
        }

        public void main (String[] args) throws IOException 
        {
          StringBuffer testFile = new StringBuffer("C:\\hoje.txt");
          String file = testFile.toString();
          try {
              BufferedReader in = new BufferedReader(new FileReader("file"));
              String str;
              while ((str = in.readLine()) != null) {
                  process();
              }
              in.close();
          } 
          catch (IOException e) {
             
          }
        
          System.out.println( "Indices da linha: " + getContents(testFile) );
          
          StringTokenizer s = new StringTokenizer(file,"|");
          ArrayList a = new ArrayList();
          
          	while (s.hasMoreTokens()) 
          	{
          	   
          	    a.add(s.nextToken());
          	    {
  		    
  		
  		      try {
  		          con = DsMySql.getConnection();
  		          sql = "INSERT INTO t001_bt_rh values (EMPRESA, FILIAL, MATRICULA, NOME, DT_NASC," +
 	  			 " NOME_CARGO, CARGO_ANO, CARGO_MÊS, CCUSTO, NOME_CCUSTO, ENDERECO " +
	  			 "ESTADO, COD_CEP, DDD, TELEFONE_1, TIPO_DOCTO_IDEN, EST_EMIS_IDENT " +
	  			 "DT_EMIS_IDENT, NUM_DOC_IDENT, CPF, RAMAL, DDD_CASA, CELULAR, TELEFONE_CASA " +
	  			 "EMAIL_PRODESP, DDD_CEL)";
    				
    				ResultSet rs =	stmt.executeQuery(sql);
    				rs.next();
  		      	  }
  		      	catch(Exception ex) 
  		      	{
  		      	    ex.printStackTrace();
  		      	}
  		       }
            }
    }
        
        
        /**
         * 
         */
        private void process() {
            // TODO Auto-generated method stub
            
        }
        public boolean equals(Pessoa pessoa) {
    	    if (!this.EMPRESA.equals(pessoa.getEMPRESA())){
    	    return false;
    	    } else if (!this.FILIAL.equals(pessoa.getFILIAL())) {
    	     return false;
    	    }else if (!this.MATRICULA.equals(pessoa.getMATRICULA())) {
       	     return false;
    	    } else if (!this.NOME.equals(pessoa.getNOME())) {
          	     return false;
    	    } else if (!this.DT_NASC.equals(pessoa.getDT_NASC())) {
          	     return false;
    	    } else if (!this.NOME_CARGO.equals(pessoa.getNOME_CARGO())) {
          	     return false;
    	    } else if (!this.CARGO_ANO.equals(pessoa.getCARGO_ANO())) {
          	     return false;
    	    } else if (!this.CARGO_MÊS.equals(pessoa.getCARGO_MÊS())) {
          	     return false;
    	    } else if (!this.CCUSTO.equals(pessoa.getCCUSTO())) {
          	     return false;
    	    } else if (!this.NOME_CCUSTO.equals(pessoa.getNOME_CCUSTO())) {
          	     return false;
    	    } else if (!this.ENDERECO.equals(pessoa.getENDERECO())) {
          	     return false;
    	    } else if (!this.ESTADO.equals(pessoa.getESTADO())) {
          	     return false;
    	    } else if (!this.COD_CEP.equals(pessoa.getCOD_CEP())) {
          	     return false;
    	    } else if (!this.DDD.equals(pessoa.getDDD())) {
          	     return false;
    	    } else if (!this.TELEFONE_1.equals(pessoa.getTELEFONE_1())) {
          	     return false;
    	    } else if (!this.TIPO_DOCTO_IDEN.equals(pessoa.getTIPO_DOCTO_IDEN())) {
          	     return false;
    	    } else if (!this.EST_EMIS_IDENT.equals(pessoa.getEST_EMIS_IDENT())) {
          	     return false;
    	    } else if (!this.NUM_DOC_IDENT.equals(pessoa.getNUM_DOC_IDENT())) {
          	     return false;
    	    } else if (!this.CPF.equals(pessoa.getCPF())) {
          	     return false;
    	    } else if (!this.DDD_CASA.equals(pessoa.getDDD())) {
          	     return false;
    	    } else if (!this.CELULAR.equals(pessoa.getCELULAR())) {
          	     return false;
    	    } else if (!this.TELEFONE_CASA.equals(pessoa.getTELEFONE_CASA())) {
          	     return false;
    	    } else if (!this.EMAIL_PRODESP.equals(pessoa.getEMAIL_PRODESP())) {
          	     return false;
    	    } 
    	    return true;
    	    }
        	public void verifica (){
        	   Pessoa FILIAL = new Pessoa();
        	   FILIAL.equals(FILIAL); 
        	}
}

1 Resposta

pcalcado

Oi,
1 - Use tags de code quando postar algumt recho de código. Desta vez eu coloquei para você :wink:

2 - Use String.split, StringTokenizer está deprecated

3 - Leia isso aqui para saber como nomear suas variáveis, classes e métodos melhor

4 - Coloque um título mais explicativo no seus tópicos :wink:

5 - Qual mensagem de erro?

[]s

Criado 2 de março de 2005
Ultima resposta 2 de mar. de 2005
Respostas 1
Participantes 2