Ok, ho eseguito il tuo codice con il tuo file e, come sospettavo, l'output che produci non va mai a capo. Tu produci un file di testo di una riga sola.
Pertanto per fare quello che tu vuoi effettua questo cambiamento dove inserisci il carattere pipe:
codice:cout << "|\n"; fout << "|\n";

Rispondi quotando