Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida sobre formato de string no TXT

Boa tarde, estou tendo dificuldade para levar os dados da minha string para o arquivo txt, O TXT vai levar os seguintes campos: ID (Ele deve ter 3 caracteres) Nome(Ele deve ter 20 caracteres) Marca(Ele deve ter 15 caracteres).

Tenho o código

using System;
using System.Text; //Para o Encoding
using System.IO; //Entrada e Saída

namespace CriandoTXT
{
    class Program 
    { 
        static void Main(string[] args) 
        {
            var caminhoNome = @"C:\Users\Aline\Documents\txt\arq01.txt";

            string [] info = {"2", "ALINE VITORIA", "BMW"};

            try
            {
                using(var fluxoDeArquivo = new FileStream(caminhoNome, FileMode.Create))
                using(var escritor = new StreamWriter(fluxoDeArquivo, Encoding.UTF8))
                {
                    foreach (string i in info)
                    {
                        escritor.Write(i);
                    }

                    Console.WriteLine("Arquivo alterado!");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Exception: " + e.Message);
            }            
        }
    }
} 

Ele cria o TXT com o texto

2ALINE VITORIABMW

Mas eu precisava que a saída fosse

002XXXXXXXXALINEVITORIAXXXXXXXXXXXXXXXXXBMW

Podem me ajudar a criar uma regra para a string? Tipo o campo nome precisa ter 20 caracteres, se tenho um nome com 5 caracteres os outros 15 precisa ser preenchido com "X"

1 resposta
solução!

Olá, Aline. Creio ter respondido mais detalhado em outro tópico, utilize PadRight e PadLeft. Exemplo:

nome = nome.PadRight(20, 'X')

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software