Olá amigos eu tenho o seguinte código.
[code]view plaincopy to clipboardprint?
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
public class rotina_2 {
public static void main(String[] args) {
// faz o caminho até chegar aos arquivos txt.
File fileCarregar = new File(
"/opt/workspace/restaurante/rotina_restaurante/COLETA.txt");
try {
FileReader readerColeta = new FileReader(fileCarregar);
BufferedReader inputColeta = new BufferedReader(readerColeta);
// faz o caminho até chegar aos arquivos txt.
String linhaColeta;
String linhaCracha;
String linhaData;
ArrayList<String> coleta = new ArrayList<String>();//aki ele fica com a seguinte linha 99043591 codigo do cracha
while ((linhaColeta = inputColeta.readLine()) != null) {//161110 data que ele passou o ponto
coleta.add(linhaColeta.substring(18));
coleta.add(linhaColeta.substring(2,8));
Collections.sort(coleta);
}
// SimpleDateFormat dataFormatada = new
// SimpleDateFormat("dd/MM/yy");
// String data = linhaColeta.substring(2,8);
fileCarregar = new File(
"/opt/workspace/restaurante/rotina_restaurante/cracha.txt");
FileReader readerCracha = new FileReader(fileCarregar);
BufferedReader inputCracha = new BufferedReader(readerCracha);
ArrayList<String> cracha = new ArrayList<String>();//nesse ele vai retornar 00200682 99043591 IGOR SOUZA SOARES
while ((linhaCracha = inputCracha.readLine()) != null) {
cracha.add(linhaCracha);
Collections.sort(cracha);
}
fileCarregar = new File(
"/opt/workspace/restaurante/rotina_restaurante/COLETA.txt");
FileReader readerData = new FileReader(fileCarregar);
BufferedReader inputData = new BufferedReader(readerData);
ArrayList<String> data = new ArrayList<String>();//aki ele vai retornar a data 00200682
while ((linhaData = inputData.readLine()) != null) {
data.add(linhaData.substring(2, 8));
Collections.sort(data);
}
int cont = 0;
// StringBuffer pegaData = new StringBuffer();
ArrayList<String> resposta = new ArrayList<String>();
ArrayList<Integer> contador = new ArrayList<Integer>();
ArrayList<String> pegaData = new ArrayList<String>();
for (int i = 0; i < cracha.size(); i++) {//aki ele percorre todo o cracha
cont = 0;
for (int j = 0; j < coleta.size(); j++) {//aki ele percorre toda a coleta
if (cracha.get(i).contains(coleta.get(j))) {//nesse if se o numero do cracha tiver armazenado na coleta ele add 1
cont++; //exemplo 00200682 99043591 IGOR SOUZA SOARES 5 ele passou 5 vezes
for (int d = 0; d < data.size(); d++) {//aki esta o problema eu preciso adicionar a data que ele passou
if (coleta.get(j).contains(data.get(d))) {//mas não está funcionando o que estaria de errado
pegaData.add(data.get(d));//teria que ficar assim 00200682 99043591 IGOR SOUZA SOARES 5 021210 031210 041210
} //051210 061210
}
}
}
resposta.add(cracha.get(i));
// System.out.println(pegaData);
// resposta.add(cracha.get(i));
contador.add(cont);
pegaData.clear();
}
fileCarregar = new File(
"/opt/workspace/restaurante/rotina_restaurante/resposta.txt");
FileOutputStream carregarResposta = new FileOutputStream(
fileCarregar);
String texto = "";
for (int k = 0; k < resposta.size(); k++) {
texto = resposta.get(k) + "\t" + contador.get(k) + "\n";
carregarResposta.write(texto.getBytes());
System.out.println(resposta.get(k) + "\t" + contador.get(k));
}
inputColeta.close();
} catch (IOException ioe) {
System.out.println(ioe);
}
}
[/code]
Alguem poderia me ajudar com esse problema que eu não estou conseguindo resolver?
desde já agradeço.