Ler txt para gerar um xml dele

O conceito que vc precisa entender é que existe uma arvore ali. Se existe uma arvore, existem nodos. Vc precisa criar uma classe que represente o nodo de forma que cada nodo possa ter filhos e um pai.
Ai vc lê o arquivo linha a linha e vai criando os nodos. Vc pode usar a edentação da linha para entender qual nodo é filho de qual.

Depois que vc tiver a arvore com todos os nodos vc precisa escrevê-la para xml. Para isso vc precisa de um objeto que vai passando de nodo em nodo e escrevendo o nodo para o xml. O laço for não vai resolver.
Este padrão chama-se visitor é muito util com estrutruas de arvores como estrutruas de pastas e arquivos por exemplo.

Sim, é complexo. Espera-se que vc tenha noção do conceito de arvore e nodo. Se vc conseguir implementar a leitura e ter a arvore , o resto é mais simples.
Para o uso do padrão visitor é bom conversar com alguém mais experiente.

Não tenha vergonha de pedir ajuda. Você não tem nada a perder e muito a ganhar. Mas faça seu trabalho de casa primeiro. Ficar batendo conta as paredes não adianta.

Fora isso, deu uma revisada em estruturas de dados porque vc está precisando e lhe será util para o resto da vida.