Ti conviene leggere una riga alla volta e fare lo split invece che un solo carattere.
Magari metti i controlli per il formato del file. Tipo:
codice:
BufferedReader reader = new BufferedReader(new FileReader("nomeFile.txt"));
ArrayList codB= new ArrayList();
ArrayList numR= new ArrayList();
ArrayList dP= new ArrayList();
String[] tmp;
String line = null;
int i = 0;
while((line=reader.readLine())!=null) {
   i++;
   tmp = line.split(" ");
   if(tmp.length!=3) 
      throws new DataFormatException("Formato file non valido alla linea "+i+": "+line);
   if(tmp[0].length()!=5) //Pero' nel primo file che hai mandato erano 6
      throws new DataFormatException("Formato file non valido alla linea "+i+": "+line);
   codB.add(tmp[0]);
   if(tmp[1].length()!=1)
      throws new DataFormatException("Formato file non valido alla linea "+i+": "+line);
   numR.add(tmp[1]);
   if(tmp[2].length()!=8)
      throws new DataFormatException("Formato file non valido alla linea "+i+": "+line);
   dP.add(tmp[2])  
}
Per la parte di connessione al db, leggiti qualche tutorial (ce ne sono una marea su web) o la pillola in alto in questa sezione del forum. Poi procurati la libreria necessaria e prova.