Quello che leggi da un file è sempre una stringa, per questo sei tu che devi conoscere quali campi sono poi per te stringhe o interi.
Se vuoi unificare il tutto puoi provare al massimo così:
codice:
String linea = ...;
ArrayList<String> listaStringhe = new ArrayList<String>();
ArrayList<Integer> listaInteri = new ArrayList<Integer>();
StringTokenizer st = new StringTokenizer(linea);
while (st.hasMoreTokens()) {
String token = st.nextToken();
try {
listaInteri.add(Integer.parseInt(token));
}
catch (Exception e) {
listaStringhe.add(token);
}
}