Se eu tenho por exemplo um arquivo dados.txt da seguinta maneira
string1 string2
string3
String4 String5 String6
Quais métodos e classes eu uso para ler estes strings um a um?
Obrigada
Se eu tenho por exemplo um arquivo dados.txt da seguinta maneira
string1 string2
string3
String4 String5 String6
Quais métodos e classes eu uso para ler estes strings um a um?
Obrigada
Para aprender a ler arquivos:
http://www.guj.com.br/java.tutorial.artigo.13.1.guj
Para separar as strings corretamente, pode pensar em separar pelo método split da classe String, ou por um StringTokenizer…
Se forem coisas mais complexas, procure por expressoes regulares.
Tutorial Guj : http://www.guj.com.br/java.tutorial.artigo.13.1.guj
Primeiramente acho que voce vai ter que ter um delimitador entre as strings…creio que seja um espaço, certo??
Depois vc ira ter que ler linha a linha… As linhas seguirão este padrão???
Ex:
Linha 1 com duas Strings
Linha 2 com uma Strings
Linha 3 com tres Strings
Use o split Ex:
String teste [] = linha.split("delimitador");
espero ter ajudado.
Se eu tenho por exemplo um arquivo dados.txt da seguinta maneirastring1 string2 string3 String4 String5 String6Quais métodos e classes eu uso para ler estes strings um a um?
Obrigada
linha com duas strings delimitador…
linha com uma
String basta um nextLine()
para ler a linha completa…
nao ha duvidas–e nem pode haver…
hehehehe
Bom dia,
Você pode resolver isso da seguinte forma:
Primeiro eu criei uma classe chamada Conteudo. Ela irá armazenar todas as Strings de uma linha do arquivo.
import java.util.Vector;
public class Conteudo<String> {
private Vector<String> strings;
public Conteudo() {
strings = new Vector<String>();
}
public void addString(String s) {
strings.add(s);
}
public void imprimirStrings() {
for (int i = 0; i < strings.size(); i++)
System.out.print(strings.get(i) + " ");
System.out.println();
}
}
depois, é só ler o arquivo linha a linha e ir armazenando os tokens da linha na classe conteúdo.
Segue um exemplo de como fazer isso:
import java.io.*;
import java.util.*;
public class Main {
public static void main(String args[]) {
// Vector para armazenar o Conteúdo das linhas do arquivo
Vector<Conteudo> linhas = new Vector<Conteudo>();
try {
// Leitor do arquivo
FileReader reader = new FileReader("c:\teste.txt");
BufferedReader leitor = new BufferedReader(reader);
// Linhas do arquivo
String linha = null;
while((linha = leitor.readLine())!= null) {
Conteudo conteudo = new Conteudo();
// Pega as SubStrings separadas por ' ' da String linha
StringTokenizer tokenizer = new StringTokenizer(linha);
while(tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
conteudo.addString(token);
}
linhas.add(conteudo);
}
for (int i = 0; i < linhas.size(); i++)
linhas.get(i).imprimirStrings();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Espero ter ajudado…
att