DIvidir String por ;

6 respostas
R

Exemplo de como deve ficar no arquivo “texto1;texto2;texto3;texto4”
alguém sabe algum comando que faça eu inserir no arquivo separando cada string por “;”??
valeu

6 Respostas

drsmachado

Pesquise sobre split(";");

R

ah foi esse split mesmo que o professor disse...
é porque estou respondendo uma lista de exercicios, uma questão é o seguinte

Crie uma classe CriarArquivoLista que será responsável por guardar uma lista de Strings em um arquivo. No construtor, ela deverá receber o nome do arquivo onde a lista será guardada. Ela deverá conter os dois seguintes métodos: ? void salvarNovaLista(List lista): salva a lista passada como parâmetro no arquivo, removendo todo o dado que existia anteriormente; meu codigo ta assim:
public class CriararquivoLisat {

	private String nome;

	public CriararquivoLisat(String nome){
		this.nome = nome;
	}
	
	public void guardarLista(List<String> lista){
		File arq = new File(nome);

		
		FileOutputStream stream = new FileOutputStream(arq);
		OutputStreamWriter writer = new OutputStreamWriter(stream);
		
		writer.write(lista);
		
		writer.close();
		stream.close();
		
		
		
	}
mas nao ta funcionando nao estou conseguind inserir nada no arquivo..

alguma dica?

R
melhore o codigo, agora quando insiro outra lista ele apaga a anterior, queria inserir apos as string anteriores no arquivos, ou seja, sem apagar os daddos que tinha no arquivo..
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;

import org.w3c.dom.ls.LSInput;


public class CriararquivoLisat {

	private String nome;

	
	public CriararquivoLisat(String nome){
		this.nome = nome;
	}
	
	public void guardarLista(List<String> lista) throws IOException{
		File arq = new File(nome);
		
			
		FileOutputStream stream = new FileOutputStream(arq);
		OutputStreamWriter writer = new OutputStreamWriter(stream);
		for(int i=0;i<lista.size();i++){
			writer.write(lista.get(i));	
		}
		
		
		
		
		writer.close();
		stream.close();
		
		
		
	}
	
}
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;


public class MAin {
public static void main(String[] args) throws IOException {
	List<String> lista = new ArrayList<String>();
	lista.add("Francisco");
	lista.add(" Robson");
	lista.add(" Duarte");
	lista.add(" Nogueira");
	List<String> lista1 = new ArrayList<String>();
	lista1.add("dua");
	
	
	CriararquivoLisat c = new CriararquivoLisat("arq");
	c.guardarLista(lista);
}
}

valeu

nel

Oi!

Use a classe PrintWriter para escrever em seu arquivo.
Utilizando o construtor podes informar para não apagar o que já existe no mesmo, apenas adicionar informações.

Dá uma olhada na API ok?
Abraços.

R

ah valeu cara,

utilizei o PrintWriter.

writer.print("") , e coloquei a String ela inseriu depois dos nome que já tinha no arquivo…só não sei se isso é uma gambiarra…
heh, então a diferença entre OUtpurstreamWriter e printwriter é justamente essa? um escreve por cima e o outro não ?
valeu…
ah tenho outra pegunta se puderes me ajudar …

? List lerLista(): lê o conteúdo do arquivo retornando uma lista de strings referente a tal conteúdo.
As listas devem ser salvas em um arquivo texto, com o seguinte formato:
linha1; linha2; linha3;
eu sei que é com o split, só não sei como usá-lo
alguma dica??

Vingdel

Boa Tarde, *robson!

split() é um método da classe String, que divide uma string de acordo com o delimitador que você passar para o método como argumento.

Digamos que você tem o seguinte:String minhaString = "AAA;BBB;CCC"; String[] minhasStrings = minhaString.split(";"); for(int i = 0; i < minhasStrings.length; i++) System.out.println(minhasStrings[i]);A saída será:
AAA
BBB
CCC

Nota-se que split() tem como valor de retorno um array do tipo String e que cada índice recebe as substrings que o delimitador separou.

O argumento esperado pelo split() é um String contendo regex, portanto procure informação adicional sobre expressões regulares para que você entenda como funciona o seu uso e para que você não se enrole com o uso do método split().

Para mais informação, leia e crie o hábito de consultar a documentação antes de perguntar.

Abraço!

Criado 12 de junho de 2011
Ultima resposta 13 de jun. de 2011
Respostas 6
Participantes 4