Galera sou novo aqui por isso não sei muito bem como criar um novo tópico espero que esteja correto.
Minha dúvia e a seguinte estou criando uma classe para manipular texto de um arquivo para outro.
O básico já consegui fazer que é abrir ler o texto e gravar em outro texto.
O problema está quando preciso manipular de fato o texto.
Preciso pegar um trecho do texto original e recorta para o outro texto ex.:
arquivo1.txt
Primeiro linha
CO9textoinserido
maistexto
maistexto
CO9quebralinha
maistextomaistexto
CO9maisumaquebra
maistexto
arquivo2.txt
Primeira linha
CO9textoinserido
maistexto
maistexto
arquivo3.txt
CO9quebralinha
maistextomaistexto
O arquivo1.txt e grande e preciso quebra ele em varios texto menores separando ele pelos 3 primeiros caracteres “CO9”.
estou usando SubString para pegar os 3 primeiros caracteres mas não sei como pegar uma parte do texto indo de um ponto até ou outro a quebra será sempre no “CO9”
Tentei usar o StringTokenizer mais ele não está pegando de um ponto até o outro pelo que eu entedi o StringTokenizer ou split ele só pega a linha com o parametro que vc passa.
eu gostaria de pegar uma parte do texto de um parametro até o outro.
E
entanglement
No seu caso, provavelmente você tem de fazer algo como:
Não tem expressão regular nem nada nessa história. Basicamente é só você fazer algo bem braçal mesmo.
M
mago_ice
quando faço o if ele pega apenas as linhascom C09.
O que preciso é que ele pegue de um C09 até o outro.
pegando assim um bloco de caracteres.
M
mago_ice
galera,
Ainda o mesmo problema preciso pegar um trecho do texto onde ele começa com C09 e vai até o proximo C09.
o programa tem que pegar de um C09 até outro.
Alguém tem alguma dica de como posso compara de um até outro valor.
Putz, dá até tristeza ver gente no GUJ ainda recomendando o StringTokenizer, sendo que o próprio Javadoc dele diz que ele não deveria ser mais usado.
Mago ice, a lógica a seguir faz mais ou menos o que você quer:
int index = texto.indexOf("C09");
while (index != -1) {
String trecho = texto.substring(0, index);
processar(trecho); //Esse é um método que vc implementa, que vai tratar o trecho separado.
texto = texto.substring(index+3);
index = texto.indexOf("C09");
}
processar(texto);
M
mago_ice
Godoy,
é quase isto mesmo que preciso como vc disse
Mas quando pego o trecho para tratar ele vem sem o C09 é preciso deste código.
É possivel pegar um trecho completo com o código C09 ou depois que quebrar o texto preciso colocar o código de novo na primeira linha.
Grato
raposo.leandro
Você pode concatenar o trecho “C09” antes de colocar no arquivo o trecho capturado.