Utiliza el estandar UTF-8, si no me equivoco puedes sustituír cada letra con acento o (~) por su equivalente en código UTF-8 como por ejemplo: 0x00F1 que si no mal recuerdo se escribe en java con diagonal invertida:
y creo que puedes hacer la sustitución en el archivo de entrada o bien en la cadena del stream.