Non ho ben capito cosa intendi fare, se leggere il contenuto del file, o cos'altro...
Penso che tu voglia leggere il contenuto del file, quindi c'eri quasi, solo che hai fatto molte operazioni in più inutili:
codice:
FileReader fr;
BufferedReader br;
String tmp1= PathInput + name;
String s = null;
String scmd = null;
try {
fr = new FileReader(tmp1);
br = new BufferedReader(fr);
do {
s = br.readLine() // in s hai il contenuto della prima linea
if (s != null) {
System.out.println("Ho letto: " + s);
} else {
System.out.println("FINE DEL FILE");
}
} while (s != null);
} catch (Exception e) { e.printStackTrace(); }
Innanzitutto ti consiglio di usare solamente un blocco try/catch, così se accade un'eccezione in qualsiasi parte del codice la catturi, senza bisogno di differenziare così tanto il punto (il compilatore, infatti, ti dice esattamente la riga in cui si è verificata l'eccezione).
Tu devi esaminare ogni riga, carattere per carattere. Quindi puoi procedere in questo modo:
codice:
do {
s = br.readLine();
if (s != null) {
for (int i=0; i<s.length(); i++) {
System.out.println("Carattere numero " + i + ": " + s.charAt(i) );
}
}
...
} while (s != null);
Il fatto che tu legga delle stringhe che rappresentano dei numeri in base 16 penso che ti serva per poterle trattare come numeri. In questo caso, la classe Integer ti mette a disposizione il metodo parseInt() che può parsare anche stringhe di numeri in base diversa dalla 10:
codice:
String mioNumero = "B902";
System.out.println("Valore decimale: " + Integer.parseInt(mioNumero, 16) );
Ciao.