boanoite
estou aprendendo java, e tb eclpise, assim elaboreio o codigo abaixo.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
public class TestaEntrada {
public static void main(String[] args) throws IOException {
String entrada = null, saida = null;
for (int i = 1; i <= 23; i++) {
entrada = i + ".txt";
saida = 100 + i + ".txt";
InputStream is = new FileInputStream(entrada);
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
BufferedReader br1 = new BufferedReader(isr);
OutputStream os = new FileOutputStream(saida);
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferedWriter bw = new BufferedWriter(osw);
String s, s1;
do {
s = br.readLine();
int j = 0;
do {
s1 = br1.readLine();
if ((s1.compareTo(s) == 0)) {
bw.append(s);
bw.newLine();
}
if ((s1.compareTo(s) != 0)) {
if (j == 0) {
bw.append(s);
bw.newLine();
bw.append(s1);
bw.newLine();
} else {
bw.append(s1);
bw.newLine();
}
}
System.out.println(j);
j++;
} while (s1 != null);
} while (s != null);
System.out.println(saida);
bw.close();
}
}
}
Pretendo fazer o com este codigo o seguinte, ler duas linhas arquivo 1.txt ( com mais de 3 mil palavras iniciadas com a letra a), testar se são iguais, e escrever o outro arquivo 101.txt, sem as palavras reptidas.
Estou com dois problemas
1- no console observo que a contagem não passa de 25382, como segue abaixo a mensagem.
…
25379
25380
25381
25382
Exception in thread “main” java.lang.NullPointerException
at TestaEntrada.main(TestaEntrada.java:39)
não consegui encontrar onde possa estar causando este erro pois pelo visto ele efetua a litura de 25382 linhas e depois da o erro.
2 - mesmo assim ele cria o arquivo 101.txt, mas nao cria o restante 102.txt, 103.txt e etc.
este erro acho que é por causa do primeiro.
Por isso gostaria de uma ajuda.
