Hola:
Nunca he probado, así que no sé si funciona, pero una posible opción que se me ocurre es tratar de leerlo como bytes directamente y luego String tiene un constructor que admite esos bytes y la codificación que usan esos bytes.
Java tiene también clases que quizás puedan ayudarte a convertir de unos charset a otros. Echa un ojo al paquete
http://download.oracle.com/javase/1....e-summary.html
Se bueno.