Per prima cosa devi ottenere la lista di directoies e files (o solo di dirs se non ti servono i files).

Una volta ottenuta questa lista devi scriverla nel file.
Magari la scrivi in questo modo:

dir
-subdir
--subsubdir
-subdir2
dir2

In questo modo ad ogni - corrisponde un livello: leggendo quanti sono i - saprai a che livello si trova la dir e potrai ricreare anche l'albero.

Non è tanto complicato.
Comincia a vedere come fare per ottenere la lista di files e dirs e poi parliamo del resto. Ciao!