Ajuda com Manipulação de txt

Boa tarde galera, seguinte tenho um txt e preciso adicionar um “;” em determinados locais para assim exporta-lo para o excel, porem estou com problemas, (nao sou programador nem estudo tal assunto, porem tenho breve conhecimento) e preciso de algumas ideias alguem pode me dar uma luz??

exemplo

SQ000002DOURADO MOSELE PEROL                                                           1989000092800075200014042008SM FD 0007        3630005000036400108000

tenho várias linhas dessas e desejo adicionar um “;” depois do oitavo caracter para separar a formula do componente.

Obrigado

Duas idéias:

Aprenda programação… depois aprenda java… e então implemente…

ou

Peça para alguém que entenda de programação fazer…

Acho que no seu caso em particular, é melhor usar um editor de texto como o Notepad++ ou o Ultraedit e pôr o “;” nas posições desejadas, para poder fazer a importação corretamente no Excel. (Tanto o Notepad++ quanto o UltraEdit têm um modo de “edição por colunas”. Você seleciona uma determinada coluna do seu texto e pode inserir um “;” em todas as linhas de seu arquivo na posição desejada.)

São muitos textos desse que você vai ter de converter, ou é algo que não precise de um programa? Digamos que você tenha 100 textos, então precisaria de um programa?

Se você estiver usando o Linux ou o Unix, existe um utilitário chamado “cut” que pode fazer isso para você (ou seja, separar e juntar textos em determinadas colunas).

sao 10 mil linhas e elas são maiores do que estas, e não tenho tempo pra aprender java, vontade não falta + a necessidade é maior

como são MUITAS linhas estava pensando em um programa para facilitar

edit [quote]SQ000002DOURADO MOSELE PEROL 1989000092800075200014042008SM FD 0007 3630005000036400108000343001290003460019500038000270000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000004VERDE SAGITARIO MET 1979000091400200000011122002SM FD 0201 3790036700034000275000359002250003710018400036300180000360000330003560002500038000711000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000006VERDE VEGA 2003000092400200000003042003SM GM 434 35200413000346000580003420001600034100013000371002650003600020700035900169000363001410003780000800038000710000 00000000 00000000 00000000 00000000 0000000060
SQ000007VERDE PETROL MET 1983000091000200000009122002SM VW LK1429 37900488000340000770003410002800037100557000360000390003560002500036300014000377000140003810004900038000709000 00000000 00000000 00000000 00000000 0000000060
SQ000008VERDE AMERICANA (VARIANTE) + CLARA 2002000097900200000028032003SM VW 0587 37300571000371002880003780021400036000173000361000270003760001600038000711000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000011AZUL ESTRATOSFERICO 000092100200000029032003SM IC 0462 37100697000373002110003550017300035600169000360000340003690000600038000710000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000012PRATA CONTINENTAL 1976000091100200000003122002SM FD 3958 37900570000340005840003430005000037100028000364000140003550000300037300007000376000010003810003300038000710000 00000000 00000000 00000000 00000000 0000000060
SQ000013CASTANHO BARROCO MET 1978000092500200000003122002SM VW 0548 341002650003640048600036300287000371001130003730000700035600004000378000370003680002000038000781000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000014CASTANHO MET 1973000092100200000004122002SM VW 0548 3790018300034100201000363004020003710032400036500015000378000730003680002200038000780000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000015MARROM SANDALO MET 1985000090600200000005122002SM FD 7379 379004010003400028000034300060000346000250003710038100036300040000369000160003780001600038000781000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000016AZUL GEMINI MET 1980000092200200000003122002SM FD 4301 3790044500034300593000356000300003710006700037300015000355000070003810013300038000710000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000019OURO MARTINICA MET 1984000092500151200004052006SM FD 7406 379001000003710005200036300020000343002700003640037000036200008000357000020003390009000038000600000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000021VERDE PLAZA MET 1978000092300200000004122002SM FD 0195 3790036000034100113000339000860003600044900036300175000378000200003560002000037300019000371000190003810002700038000712000 00000000 00000000 00000000 0000000060
SQ000022AZUL MARSELHA MET (VARIANTE) + ESCURA 1983000090600200000003122002SM FD 7036 3790039600034000113000339001020003710039600035500260000356000150003610000900038000709000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000023CINZA BRISTOL MET V. ANGULO CLARO 1989000090600200000003122002SM FD 8269 3790041000033900029000340002290003410020500037100318000355000880003620001000038000711000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060
SQ000024VERDE ASTOR MET 1982000090800200000003122002SM FD 0174 37900250000341003880003440007500035900088000371004510003810003700038000711000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000000060[/quote]

preciso separar isso para exportar para o excel, são muitas linhas é que aqui nao está tabulado com quebras de linha + no notepad está dividido em linhas

Tudo bem que sejam 10000 linhas. É um arquivo só? Se for um arquivo só, então nem eu faria um programa. Eu simplesmente baixaria o Notepad++, aprenderia a usar o modo de edição de colunas, e iria inserir um “;” nas colunas adequadas.

estou baixando o notepad ++

Baixe o Notepad++ a partir de : http://notepad-plus-plus.org/

O modo de edição de colunas, se não me engano, consiste em teclar a tecla Alt enquanto você está selecionando uma coluna. No seu caso, você posiciona na coluna em que quer inserir um “;”, deixa a seleção com largura zero, e então simplesmente tecla um “;”. Você vai ver que ele vai inserir um “;” em todas as linhas nessa mesma posição.

po cara salvou minha vida este notepad++ valeu a ajuda abraço e boas aplicações pra vcs

Pois é.
Para resolver certas coisas, é melhor usar as ferramentas corretas.
Se puder evitar escrever um programa e usar um pronto que seja confiável (sem “torcer” muito o modo como o programa foi originalmente concebido para funcionar), então use o programa pronto.
Uma coisa que é boa no ambiente Unix é que normalmente há algumas ferramentas bem bobocas - grep, cut, find, awk, sed, sort, uniq, more, tail, tee - que juntas fazem muita coisa - é só saber usá-las e combiná-las.
O problema é que mesmo os Linuxeiros, que deveriam conhecer bem essas ferramentas, acabam ficando meio preguiçosos (ou desinformados) e não conhecem essas coisas.
Nem vou falar no pessoal que usa Windows. Fora os poucos que costumam usar ferramentas como o Cygwin ou o PowerShell, é difícil ver gente que consegue usar as ferramentas simples e combiná-las para poder ter bons resultados.
Vou dar um exemplo simples em Windows: como é que se faz para obter uma listagem recursiva de arquivos, a partir de um determinado diretório? 99% das pessoas me diria que não dá, ou então que você tem de fazer um programa. Mas de fato é muito simples, basta usar uma linha de comando e rodar o comando:

dir /b /s *.xml

se quiser saber todos os arquivos XML que estão no diretório corrente ou em seus subdiretórios.

Se precisar dessa lista em um arquivo, basta fazer:

dir /b /s *.xml > lista.de.arquivos.txt

Concordo com o entanglement… apesar de nas minhas dicas… nao ter citado use um programa pronto :smiley:

Quem sabe mais esses comandos… é quem meche com computacao a mais tempo… da época em que vc realmente trabalhava com linha de comando…

Hoje raramente voce precisa de algo desse tipo… entao… o pessoal acaba nao aprendendo mesmo…

Apesar de que eu tive matérias na faculdade sobre isso…(vc nao vai lembrar dos comandos depois de um tempo… mas pelo menos sabe que eles existem)

Qualquer coisa vc faz um dir /? :lol: