String de um arquivo e ler char da string

5 respostas
J

Pessoal, estou com um problema, que não parece complicado mas não consigo resolver,

tenho um arquivo de entrada
ride.in

que tem duas palavras, uma em cada linha, por exemplo
oi
tchau

tenho que ler essas strings, e ai cada caracter tem um valor considerando a=1 e z=26,
eu preciso descobrir quanto vale cada palavra multiplicando seus respectivos valores na escala dada…

o que pensei:
vou ler cada string, depois leio cada char da string, e ai vejo o valor de cada é multiplico,

mas não tá simples, olha o começo do meu código:

import java.io.;
import java.util.
;

class test {

public static void main (String [] args) throws IOException {

// Use BufferedReader rather than RandomAccessFile; it’s much faster

BufferedReader f = new BufferedReader(new FileReader(ride.in));

// input file name goes above

PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(ride.out)));
String s1 = f.readLine();                      // gets entire line
String s2 = f.readLine();

estou lendo cada string corretamente?
e como faço para correr cada char da string?

agradeço imensamente qualquer ajuda,
abraços,

5 Respostas

marcosbrandao

da uma olhada neste aqui, acho que eh isso que tu queh:

BufferedReader br = new BufferedReader(new FileReader(arq));
		StringBuffer sb = new StringBuffer();
		String str;
		while ((str = br.readLine()) != null) {
			sb.append(str).append("\n");
			
			//cria um array de char a partir de uma string
			char[] palavra = str.toCharArray();
			
			//aqui voce escreve o codigo para ler cada elemento do array de char
			...
		}
luistiagos

cria uma String contendo a linha inteira que vc recuperou tipo
String str = “sua linha”

depois intera com

for(int i=0;i<str.length;i++)

char c = str.charAt(i);

c tera um por um de seus chars…

Carlos_ds_jar

A forma que o colega de cima passou é a melhor!
Já tive esse problema antes!

MarThiNha

Esse eh um exemplo bem simples de como usar essa conversao de CHAR P/ STRING;
Crie uma variavel String. Ela so vai servir como variavel auxiliar,[color=violet] [/color][b] pois o metodo Scanner nao aceita o nextChar, depois usa o scanner normalmente (usamos o next pra ler a String) e faz a tua variavel char, no caso ‘y’, receber o teu ‘x’ com o charAt() (que serve para converter string pra char).Pronto!!
Espero q ajude…
Abraços

IFET-CE - campus Maracanau.

import java.util.*;

public class switchchar {
public static void main(String args[]){

char y;
	Scanner s = new Scanner(System.in);
	String x;

    System.out.println("digite uma letra:");
    x = s.next();
    y = x.charAt(0);


	switch(y){
	case 'c':
	System.out.println("casado");
	break;
	case 'v':
	System.out.println("viuvo");
	break;
	case 'd':
	System.out.println("divorciado");
	break;
	case 's':
	System.out.println("solteiro");
	break;
	case 'u':
	System.out.println("uniao civil estavel");
	break;
	default: System.out.println("outros");

	}
}

} 8)

MarThiNha
import java.util.*;

public class switchchar {
public static void main(String args[]){

char y;
Scanner s = new Scanner(System.in);
String x;

System.out.println("digite uma letra:");
x = s.next();
y = x.charAt(0);


switch(y){
case 'c':
System.out.println("casado");
break;
case 'v':
System.out.println("viuvo");
break;
case 'd':
System.out.println("divorciado");
break;
case 's':
System.out.println("solteiro");
break;
case 'u':
System.out.println("uniao civil estavel");
break;
default: System.out.println("outros");

}
}

}
Criado 12 de abril de 2007
Ultima resposta 26 de mar. de 2009
Respostas 5
Participantes 5