Non l'ho potuto eseguire ovviamente, ma guardandolo credo di aver trovato il problema. L'oggetto file non viene inizializzato prima dell'utilizzo. Lo dichiari come "file = null" e poi sotto lo passi al costruttore di FileOutputStream. Ad occhio penso sia questo il problema.

Ricorda comunque che devi chiudere il flusso una volta completate le operazioni.