Escrevendo de forma alinhada

Olá pessoal!

Tenho uma questão:

Eu estou escrevendo em um arquivo txt algumas Strings, mas eu gostaria de atribuir um tamanho fixo para o espaço em que essa String irá ocupar, por exemplo, tenho uma String nome independente do tamanho desse nome, queria definir um espaço para ele no arquivo.txt de 50 caracteres.
Tenho esse problema:

1 Carro Gasolina
2 Caminhão Diesel

e gostaria de escrever dessa maneira, delimitando o espaço:

1___Carros___ _____Gasolina
2___Caminhão______Diesel

Os underlines seriam o espaço reservado para a String, mas ela não ocupou inteiramente.

Queria escrever de forma mais alinhada, eu vi alguma coisa sobre paddingString, mas não encontrei uma maneira de implementar isso.
Se alguem puder me ajudar, agradeço desde já.

Abraços.

Utilize a classe StringBuilder para concatenar espaços de acordo com o tamanho que vc deseje, assim todas terão número constante de caracteres. Isso vai gatantir que elas tenham mesmo nro de caracteres. Já o alinhamento fica dificil, já que que os carcteres possuem numero de pixels diferentes…

Dê uma olhada na classe Formatter