Fala galera estou programando, então não vim para copiar código srsrsrs.
Mas fritei meu tico e teco e estou sem ideias no momento, e vim compartilhar e pedir um help.
package Carga;
import java.io.*;
import java.sql.*;
public class CopyPendentes extends Conexao {
public static void main(String[] args) throws IOException, Exception {
//abre conexão
Connection conn = ObterConexao();
//lê o arquivo e coloca em buffer de memoria
FileReader arq = new FileReader ("C:/Users/F8061431/Desktop/Bases/Bases Pendentes/Chamados_Pendentes1.txt");
BufferedReader sr = new BufferedReader (arq);
String[] adados = new String [54];
String dados = null;
//retira a linha com o nome das colunas
sr.readLine();
// inicia o loop com tratamento retirando as " e tratando quebra de linha.
while ((dados = sr.readLine().replaceAll("\"", ""))!= null) {
adados = dados.replaceAll("\r\n", "").split(",");
//insere os dados no banco
PreparedStatement query1 = conn.prepareStatement("INSERT INTO BASE_PENDENTES_TEMP2 VALUES ('"+adados[0]+"','"+adados[1]
+"','"+adados[2]+"','"+adados[3]+"','"+adados[4]+"','"+adados[5]+"','"+adados[6]+"','"+adados[7]+"','"+adados[8]+"','"
+adados[9]+"','"+adados[10]+"','"+adados[11]+"','"+adados[12]+"','"+adados[13]+"','"+adados[14]+"','"+adados[15]+"','"
+adados[16]+"','"+adados[17]+"','"+adados[18]+"','"+adados[19]+"','"+adados[20]+"','"+adados[21]+"','"+adados[22]+"','"
+adados[23]+"','"+adados[24]+"','"+adados[25]+"','"+adados[26]+"','"+adados[27]+"','"+adados[28]+"','"+adados[29].replaceAll("\n", "")+"','"
+adados[30]+"','"+adados[31]+"','"+adados[32]+"','"+adados[33]+"','"+adados[34]+"','"+adados[35]+"','"+adados[36]+"','"
+adados[37]+"','"+adados[38]+"','"+adados[39]+"','"+adados[40]+"','"+adados[41]+"','"+adados[42]+"','"+adados[43]+"','"
+adados[44]+"','"+adados[45]+"','"+adados[46]+"','"+adados[47]+"','"+adados[48]+"','"+adados[49]+"','"+adados[50]+"','"
+adados[51]+"','"+adados[52]+"','"+adados[53]+"',TO_CHAR(CURRENT_DATE,'DD/MM/YYYY'))");
query1.execute();
query1.close();
}
conn.close();
sr.close();
}
}
Não posso mostrar o arquivo mas ele vem +ou- dessa forma
“titulo das colunas”,“titulo das colunas”,“titulo das colunas”,“titulo das colunas”,“titulo das colunas”
“65484787”,2014-12-16 23:54:00,“tecoteco”,“qwewe”,“qwewqefe”,“weerdqwd”
“65484787”,2014-12-16 23:54:00,“tecoteco”,“qwewe”,“qwewqefe”,“weerdqwd”
Porem em algumas linhas tenho a ocorrência do CRLF acontecendo no meio da linha sempre em uma mesma coluna.
“65484787”,2014-12-16 23:54:00,“tecoteco”,"qwewe
",“qwewqefe”,“weerdqwd”
Cheguei a conclusão que meu tratamento para quebra de linha não funciona pois o buffer está sendo lido linha a linha. Então a quebra deveria ser tratada antes mas poderia retirar as quebras corretas ou fazer a inserção de dados direto da leitura do arquivo para tentar aumentar o desempenho e tratar o arquivo.
Mas tbm ocorre este erro Exception in thread “main” java.lang.NullPointerException.
Obrigado a todos que puderem ajudar e desculpe o longo post.