Enviar Arquivo pelo Socket

Estou precisando enviar um arquivo via Socket, porem tenho percebido que quando envio uma classe File (que ja esta instanciado o arquivo) pelo metodo writeObject(file); ao chegar no cliente parece que foi enviado apenas o cabeçalho com as informacoes e por este motivo nao consigo gravar o arquivo na maquina do cliente, Alguem sabe como faço para transferir um arquivo via socket e gravar na maquina cliente ???

Ex. do me codigo:

Servidor {
ObjectOutputStream out = new O… (socket.getOutputStream());
File arquivo = new File(c:\arquivo.txt");
out.writeObject(arquivo);
}

Cliente {
ObjectInputStream in = new O… (socket.getInputStream());

File arq = (File) in.readObject();

/* aqui tentei gravar diretamente, porem parece que somente o cabecalho do arquivo foi enviado */

}

Agradeço

Diego Coronel Cavalcante

DiegoCoronel,

pesquise sobre FileInputStream e FileOutputStream.
é com eles que vc vai conseguir tranquimir o arquivo que queres.

Abraço,
Maicon