String (byte[]) de um File e File a partir de um String (byte[])

pessoal, isso faz parte da minha TCC e to achando ridículo não funcionar…
seguinte: preciso pegar todos os bytes de um arquivo e transformá-lo em uma String
e depois, fazer o processo reverso, isto é, gerar um File a partir de uma String dos bytes desse File…

já tentei de tdo, ele não gera um arquivo válido no final
ao que me parece, o problema tah no Charset, mas eu jah testei usando o charset default e mesmo assim…
fiz o seguinte teste: renomeei o arquivo alvo para um txt, criei um arquivo txt a partir dos bytes do arquivo alvo e comparei… são diferentes…

alguém tem uma solução pra isso?

Poste seu código(entre as tags CODE) para tentarmos achar o erro. Precisa ser binário? Não pode ser texto? Se puder ser texto basta usar PrintWriter:

PrintWriter writer = new PrintWriter(new FileOutputStream(seuArquivo)); writer.write(string); writer.write("|"); //separador para usar no StringTokenizer writer.write("batata"); ... seuArquivo.close();

Vou contar um segredo para você - uma string não é um array de bytes.
Dependendo dos bytes contidos no arquivo (por exemplo, zeros binários), não há charset que dê jeito nessa sua conversão-desconversão.
Se o que você tem é um arquivo-texto, use FileReader, não FileInputStream.