Il carattere \t (ovvero la tabulazione) è un carattere "particolare": visivamente i vari campi possono non essere allineati (dipende sempre dall'ampiezza visiva di tale carattere e dalla quantità di dati che ci sono nella colonna "precedente". E' ottimo per permettere una corretta separazione delle colonne per diversi automatismi (da Excel ai vari programmi che interpretano dati con tracciati definiti, ecc).

Se il tuo scopo è ottenere un allineamento "visivo" (nel senso che se lo apri col blocco note, ad esempio, le colonne sono ben allineate) allora l'unico carattere che ha senso usare è lo spazio singolo (che rappresenta la più piccola unità come carattere) e devi effettuare tu tutti i calcoli necessari: devi, cioè, sapere a priori (prima di iniziare a scrivere il file) quale sarà la larghezza di ciascuna colonna (quindi, devi conoscere esattamente il numero di caratteri di cui è composto il campo di lunghezza massima di una specifica colonna), quindi scrivere "fillando" di spazi dove necessario.

Non è un'operazione "banale" perchè richiede di scorrere 2 volte tutti i dati da scrivere: la prima volta per ottenere il numero massimo di caratteri di ciascuna colonna, la seconda volta per la scrittura effettiva su file.

Sto, ovviamente, prendendo in esame i file di testo puri: se il tuo obiettivo può essere raggiunto anche creando un file HTML, le cose diventano molto più semplici, ma a questo punto si parla di ipertesti e non di file di testo.


Ciao.