Olá, preciso de uma ajuda.
Tenho que ler um arquivo TXT, alterar algumas informações e depois escrever em um novo arquivo, porém com layouts diferentes.
O TXT tem vários números e letras, sem delimitador. A minha referência são os dois primeiros número de cada linha e a quantidade de caracteres de cada campo. Portanto, preciso definir um layout com o tamanho dos campos, vou dar um exemplo:
Arquivo TXT:
104440000 222222288888ABCDEF 77774420091
2299999888888 ABCDEFGHIJKL00000000000
7400000001299999000 000000000100000002340000
7400000001400000100 000000023990000200000100
Cada TIPO de linha, tem um layout diferente. Vamos imaginar que eu quero ler as informações das linhas do TIPO 74, ou seja, todas as linhas que começam com 74 têm o mesmo layout e eu só quero as informações dessas linhas. Então eu teria que definir esse layout para que o sistema separe os campos de acordo com essas informações.
Então o meu layout seria algo parecido com isso:
Tipo: coluna 1, 2 caracteres
Código do produto: coluna 3, 10 caracteres
Quantidade: coluna 13, 7 caracteres
E assim por diante.
Então eu preciso ter essas informações separadas, pra que eu depois possa ler e editar essas informações separadamente, e por fim, gravar um novo TXT com as alterações, seguindo um novo layout predefinido. Nesse novo layout eu usaria os mesmos campos, porém em ordem diferente.
Alguém poderia me dar uma luz de como fazer isso?
Obrigado