Problemas em carregar um arquivo txt em array

Ola pessoal, sou novo no forum e em programar. Estive trabalhando apenas como DBA junior do junior rsrss nos últimos dois anos. Porem hoje preciso programar tbm para automatizar meus relatórios.
O problema é o seguinte: preciso ler bases de dados em txt e excel, o txt está com os campos separados por virgula, alguns campos com aspas duplas e alguns nomes possuem aspas simples, tipo sata’nna, isso tudo em um arquivo que vem com 2000 as 80000 linhas. Os tratamentos mais importantes pra mim e retirar a aspas simples do nome, pegar o campo data que vem no formato 2014-09-18 00:00:00 e passa pro formato 18/09/2014 inserindo cmo texto e pegar cada campo existente dentro de uma linha que são 42 campos e coloca-los em um array, para que eu possa em seguinda montar a query atraves do add sql com os campos do array e fazer o insert no banco. Porem logo no inicio já tenho problemas com a leitura do arquivo não conseguindo colocar no array de forma certa pois algumas vezes tenho erros de pegar toda linha e jogar no array [1] por exemplo ou ignorar os campos nulos causando erro de inserção. campos nulos ou vazios preciso que entrem no banco da mesma forma.

Fiz varios codigos, segue os codigos para ve-los:

package Teste1;
import java.io.*;
import java.util.*;

public class Teste4 {
	
		      public static void main(String[] args) throws IOException {
		      // TODO code application logic here

		      // // read KeyWestTemp.txt

		      // create token1
		      String token1 = "";

		      // for-each loop for calculating heat index of May - October

		      // create Scanner inFile1
		      Scanner inFile1 = new Scanner(new File("C:/Users/F8061431/Desktop/Bases/Base Abertos/teste3.txt")).useDelimiter(",");

		      List<String> temps = new LinkedList<String>();

		      // while loop
		      while (inFile1.hasNext()) {
		        // find next line
		        token1 = inFile1.next();
		        temps.add(token1);
		      }
		      inFile1.close();

		      String[] tempsArray = temps.toArray(new String[0]);

		      for (String s : tempsArray) {

		    	  	String ID_CHAMADO = s;
					String DT_CRIACAO = s;
					String DT_FECHAMENTO = s;
					String TELEFONE = s;
					String DESC_OPERADORA = s;
					String DESC_PLANO = s;
					String DESC_MOTIVO_1 = s;
					String DESC_MOTIVO_2 = s;
					String DESC_MOTIVO_3 = s;
					String DESC_MOTIVO_4 = s;
					String TITULO = s;
					String MATRICULA = s;
					String PIN = s;
					String NOME_ABERTURA = s;
					String CRIADO_POR = s;
					String MATRICULA_CRIACAO = s;
					String SUP_CRIACAO = s;
					String ORGANIZACAO = s;
					String DESC_CELULA_BO = s;
					String DESC_RESOLUCAO = s;
					String DESC_STATUS = s;
					String DESC_FILA = s;
					String DESC_PRIORIDADE = s;
					String DESC_ANALISE_AREA_RESPONSAVEL = s;
					String DESC_ORIGEM = s;
					String SITE_ABERTURA = s;
					String DESC_DIRECAO = s;
					String DESC_TIPO = s;
					String DESC_GRUPO_PLANO = s;
					String LOGIN_FECHAMENTO = s;
					String NOME = s;
					String ID_SEGMENTO = s;
					String END2END = s;
					String DESC_SKILL_RESPONSAVEL = s;
					String SITE_RESPONSAVEL = s;
					String CONTATO = s;
					String TELEFONE_ALTERNATIVO = s;
					String CPF_CNPJ = s;
					String DT_VENCIMENTO_FATURA = s;
					String DESC_TERRITORIO = s;
					String FATURAMENTO_ABERTOS = s;
					String REGRAS_SI = s;
					
					System.out.print(ID_CHAMADO);
					System.out.print(DT_CRIACAO);
					System.out.print(DT_FECHAMENTO);
					System.out.print(TELEFONE);
					System.out.print(DESC_OPERADORA);
					System.out.print(DESC_PLANO);
					System.out.print(DESC_MOTIVO_1);
					System.out.print(DESC_MOTIVO_2);
					System.out.print(DESC_MOTIVO_3);
					System.out.print(DESC_MOTIVO_4);
					System.out.print(TITULO);
					System.out.print(MATRICULA);
					System.out.print(PIN);
					System.out.print(NOME_ABERTURA);
					System.out.print(CRIADO_POR);
					System.out.print(MATRICULA_CRIACAO);
					System.out.print(SUP_CRIACAO);
					System.out.print(ORGANIZACAO);
					System.out.print(DESC_CELULA_BO);
					System.out.print(DESC_RESOLUCAO);
					System.out.print(DESC_STATUS);
					System.out.print(DESC_FILA);
					System.out.print(DESC_PRIORIDADE);
					System.out.print(DESC_ANALISE_AREA_RESPONSAVEL);
					System.out.print(DESC_ORIGEM);
					System.out.print(SITE_ABERTURA);
					System.out.print(DESC_DIRECAO);
					System.out.print(DESC_TIPO);
					System.out.print(DESC_GRUPO_PLANO);
					System.out.print(LOGIN_FECHAMENTO);
					System.out.print(NOME);
					System.out.print(ID_SEGMENTO);
					System.out.print(END2END);
					System.out.print(DESC_SKILL_RESPONSAVEL);
					System.out.print(SITE_RESPONSAVEL);
					System.out.print(CONTATO);
					System.out.print(TELEFONE_ALTERNATIVO);
					System.out.print(CPF_CNPJ);
					System.out.print(DT_VENCIMENTO_FATURA);
					System.out.print(DESC_TERRITORIO);
					System.out.print(FATURAMENTO_ABERTOS);
					System.out.print(REGRAS_SI);
		    	  
		      }
		    }
		  } [/code]
[code]
package Teste1;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class Nteste {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		FileReader reader = new FileReader("C:/Users/F8061431/Desktop/Bases/Base Abertos/teste1.txt");
		BufferedReader sr = new BufferedReader(reader);
		String[] dados = new String [42];
		String dados1 = null;
	    while ((dados1 = sr.readLine()) != null) {
	    	
	    	dados[0] = dados1;
	    	dados[1] = dados1;
	    	dados[2] = dados1;
	    	dados[3] = dados1;
	    	dados[4] = dados1;
	    	dados[5] = dados1;
	    	dados[6] = dados1;
	    	dados[7] = dados1;
	    	dados[8] = dados1;
	    	dados[9] = dados1;
	    	dados[10] = dados1;
	    	dados[11] = dados1;
	    	dados[12] = dados1;
	    	dados[13] = dados1;
	    	dados[14] = dados1;
	    	dados[15] = dados1;
	    	dados[16] = dados1;
	    	dados[17] = dados1;
	    	dados[18] = dados1;
	    	dados[19] = dados1;
	    	dados[20] = dados1;
	    	dados[21] = dados1;
	    	dados[22] = dados1;
	    	dados[23] = dados1;
	    	dados[24] = dados1;
	    	dados[25] = dados1;
	    	dados[26] = dados1;
	    	dados[27] = dados1;
	    	dados[28] = dados1;
	    	dados[29] = dados1;
	    	dados[30] = dados1;
	    	dados[31] = dados1;
	    	dados[32] = dados1;
	    	dados[33] = dados1;
	    	dados[34] = dados1;
	    	dados[35] = dados1;
	    	dados[36] = dados1;
	    	dados[37] = dados1;
	    	dados[38] = dados1;
	    	dados[39] = dados1;
	    	dados[40] = dados1;
	    	dados[41] = dados1;
	    	
	    	System.out.println(dados[0]);
	    	
	    		    	
	    
	    }
	    reader.close();
	}
}
[/code]
[code]package Carga_bd;

import java.io.*;
import java.util.*;

public class Leitura {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	
		try {
			Scanner scanner = new Scanner(new FileReader("C:/Users/F8061431/Desktop/Bases/Base Abertos/teste1.txt")
            ).useDelimiter(",");
			while (scanner.hasNext() ) {
				String ID_CHAMADO = scanner.next();
				String DT_CRIACAO = scanner.next();
				String DT_FECHAMENTO = scanner.next();
				String TELEFONE = scanner.next();
				String DESC_OPERADORA = scanner.next();
				String DESC_PLANO = scanner.next();
				String DESC_MOTIVO_1 = scanner.next();
				String DESC_MOTIVO_2 = scanner.next();
				String DESC_MOTIVO_3 = scanner.next();
				String DESC_MOTIVO_4 = scanner.next();
				String TITULO = scanner.next();
				String MATRICULA = scanner.next();
				String PIN = scanner.next();
				String NOME_ABERTURA = scanner.next();
				String CRIADO_POR = scanner.next();
				String MATRICULA_CRIACAO = scanner.next();
				String SUP_CRIACAO = scanner.next();
				String ORGANIZACAO = scanner.next();
				String DESC_CELULA_BO = scanner.next();
				String DESC_RESOLUCAO = scanner.next();
				String DESC_STATUS = scanner.next();
				String DESC_FILA = scanner.next();
				String DESC_PRIORIDADE = scanner.next();
				String DESC_ANALISE_AREA_RESPONSAVEL = scanner.next();
				String DESC_ORIGEM = scanner.next();
				String SITE_ABERTURA = scanner.next();
				String DESC_DIRECAO = scanner.next();
				String DESC_TIPO = scanner.next();
				String DESC_GRUPO_PLANO = scanner.next();
				String LOGIN_FECHAMENTO = scanner.next();
				String NOME = scanner.next();
				String ID_SEGMENTO = scanner.next();
				String END2END = scanner.next();
				String DESC_SKILL_RESPONSAVEL = scanner.next();
				String SITE_RESPONSAVEL = scanner.next();
				String CONTATO = scanner.next();
				String TELEFONE_ALTERNATIVO = scanner.next();
				String CPF_CNPJ = scanner.next();
				String DT_VENCIMENTO_FATURA = scanner.next();
				String DESC_TERRITORIO = scanner.next();
				String FATURAMENTO_ABERTOS = scanner.next();
				String REGRAS_SI = scanner.next();
				
				System.out.print(ID_CHAMADO);
				System.out.print((DT_CRIACAO.toString()).substring(10));
				System.out.print(DT_FECHAMENTO);
				System.out.print(TELEFONE);
				System.out.print(DESC_OPERADORA);
				System.out.print(DESC_PLANO);
				System.out.print(DESC_MOTIVO_1);
				System.out.print(DESC_MOTIVO_2);
				System.out.print(DESC_MOTIVO_3);
				System.out.print(DESC_MOTIVO_4);
				System.out.print(TITULO);
				System.out.print(MATRICULA);
				System.out.print(PIN);
				System.out.print(NOME_ABERTURA);
				System.out.print(CRIADO_POR);
				System.out.print(MATRICULA_CRIACAO);
				System.out.print(SUP_CRIACAO);
				System.out.print(ORGANIZACAO);
				System.out.print(DESC_CELULA_BO);
				System.out.print(DESC_RESOLUCAO);
				System.out.print(DESC_STATUS);
				System.out.print(DESC_FILA);
				System.out.print(DESC_PRIORIDADE);
				System.out.print(DESC_ANALISE_AREA_RESPONSAVEL);
				System.out.print(DESC_ORIGEM);
				System.out.print(SITE_ABERTURA);
				System.out.print(DESC_DIRECAO);
				System.out.print(DESC_TIPO);
				System.out.print(DESC_GRUPO_PLANO);
				System.out.print(LOGIN_FECHAMENTO);
				System.out.print(NOME);
				System.out.print(ID_SEGMENTO);
				System.out.print(END2END);
				System.out.print(DESC_SKILL_RESPONSAVEL);
				System.out.print(SITE_RESPONSAVEL);
				System.out.print(CONTATO);
				System.out.print(TELEFONE_ALTERNATIVO);
				System.out.print(CPF_CNPJ);
				System.out.print(DT_VENCIMENTO_FATURA);
				System.out.print(DESC_TERRITORIO);
				System.out.print(FATURAMENTO_ABERTOS);
				System.out.print(REGRAS_SI);
			
			}
			
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();

		}
		
	}

}

Algumas coisas que podem ajudar:

-dá pra pegar uma linha inteira com o scanner com o método nextLine;
-pegando a linha inteira, é possível usar o método replaceAll para retirar as aspas simples e duplas;
-tendo a linha limpa, pode construir o array com os valores usando o método split de String;

Então enquanto eu aguardava algum amigo aqui responder eu refiz o codigo e deixei assim:
Obs Obrigado Regis…

package Teste1;

import java.io.*;
import java.sql.*;

public class Teste5 extends Conexao {

	public static void main(String[] args) throws IOException, Exception  {
		// TODO Auto-generated method stub
		
		Connection Conn = ObterConexao();
		
		Statement statement = Conn.createStatement();
				
		FileReader arq = new FileReader ("C:/Users/F8061431/Desktop/Bases/Base Abertos/teste1.txt");
		BufferedReader sr = new BufferedReader (arq);
		String[] adados = new String [42];
		String dados = sr.readLine();
		
		while ((dados = sr.readLine()).replaceAll("'", "") != null) {
			
			adados = dados.split(",");
		
			String query = "INSERT INTO BASE_ABERTOS_TEMP 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]+"','"+
			adados[30]+"','"+adados[31]+"','"+adados[32]+"','"+adados[33]+"','"+adados[34]+"','"+adados[35]+"','"+adados[36]
			+"','"+adados[37]+"','"+adados[38]+"','"+adados[39]+"','"+adados[40]+"','"+adados[41]+"',TO_CHAR(CURRENT_DATE,'DD/MM/YYYY'));";
            
			statement.executeQuery(query);

		 
		
		}
		
		Conn.close();
		sr.close();
	}

}

E a classe de conexão será que está udo certo?

package Teste1;

import java.sql.*;

public class Conexao {

	protected static Connection ObterConexao() {

        Connection conn = null;

        try {

                 Class.forName("oracle.jdbc.driver.OracleDriver");

                 conn = DriverManager.getConnection(

                                    "jdbc:oracle:thin:@127.0.0.1:1521:orcl", "system", "123654");

        } catch (ClassNotFoundException e) {

                 e.printStackTrace();

        } catch (SQLException e) {

                 e.printStackTrace();

        }

        return conn;

	}

}

Porem deu esses erros:
Se ainda puder ajudar.

java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at Teste1.Conexao.ObterConexao(Conexao.java:13)
	at Teste1.Teste5.main(Teste5.java:11)
Exception in thread "main" java.lang.NullPointerException
	at Teste1.Teste5.main(Teste5.java:13)

Esse erro é típico de driver JDBC não setado no path da sua aplicação.Se estiver usando um Eclipse da vida, é necessário importar para o seu Classpath!

Blz, estava usando o jdk7 que funcionou apenas com o jdbc7