Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - or.gutierrez

#1
Estimados, junto con saludar me dirijo a ustedes para ver si me pueden dar una mano con respecto a un problemilla que tengo, les cuento que tengo una aplicación .jar la cual ejecuto mediante el programador de tareas de windows, pero lo que realmente necesito realizar es que ese jar se ejecute por el mismo programador de tareas, pero en base a una lectura que haga de un pequeño archivo que tengo en la carpeta donde tengo el jar, el archivo propeties y otro archivo .txt que dentro tiene una variable de valor falso, o sea cambiando ese valor a true se proceda a ejecutar la tarea... no se si me explique bien. Cualquier tip sera bienvenido. Desde ya gracias
#2
Algo voy avanzando, pero aun no logro sacar todas las palabras y cuando recorro el archivo me muestra registros saltados...  agradezco la ayuda. Saludos.

acá el código:

Código (javapublic class ComparaTxtPdf {

public void compararNominas() throws IOException{

String descptnFile  = "C:\\Log.txt";

File dirTxt = new File("C:\\NominasTxt\\");
String[) [Seleccionar]
nominasTxt = dirTxt.list();

File dirConver = new File("C:\\PDFconver\\");
String[] converTxt = dirConver.list();

PdfFile pdfPrueba = new PdfFile();

//for (int x=0;x<nominasTxt.length;x++){//SE RECORRE EL ARREGLO CON LOS NOMBRES DE ARCHIVO
            //String actualFile=("C:\\NominasTxt\\"+nominasTxt[x]);//SE ALMACENA LA RUTA DEL ARCHIVO A LEER.
           
            //no es necesario recorrer los pdf, ya que solo se necesita comparara el txt con los valores de las nominas que ya estan dentro de un fichero, se sugiere usar
            //hashmap para guardar los pdf
           
            for (int i=0;i<converTxt.length;i++){//SE RECORRE EL ARREGLO CON LOS NOMBRES DE ARCHIVO
            String expectedFile=("C:\\PDFconver\\"+converTxt[i]);

     try{
     // Crea los archivos leer archivo escribir archivo
     //FileReader actualFileReader  = new FileReader(actualFile);
     FileReader expctdFileReader  = new FileReader(expectedFile);
     FileWriter resultDesc = new FileWriter(descptnFile);

     //PRUEBA HASHMAP
     pdfPrueba.llenarArreglo("C:\\palabrasVetadas.txt");
     
     BufferedReader expcFileBufRdr = new BufferedReader(expctdFileReader);
     
     String rut, nombre;
     int folio, cuota, total_cuota, valor_cuota, total;
     
    while(expcFileBufRdr.ready()){
    //creo nuevo objeto de tipo record donde voy a guardar los valores de las variables
    Record record = new Record();
   
    if(!pdfPrueba.compararLinea(expcFileBufRdr.readLine()) && expcFileBufRdr.readLine()!=null){
    //System.out.println("Tamano Original " + pdfPrueba.getTrash().size());
//pdfPrueba.llenarArreglo("C:\\palabrasVetadas.txt");
//System.out.println("Tamano sin palabras vetadas " + pdfPrueba.getTrash().size());
   
    String[] campos = expcFileBufRdr.readLine().split(" ");
   
   
    for(int m = 0; m<campos.length; m++){
   
    System.out.println(campos[m]);
   
   

    }
   
   
    /*record.setCuota(1);
     record.setFolioCredito(1);
     record.setNombreDeudor("");
     record.setRutDeudor(campos[0]);
     record.setTotalCuotas(1);
     record.setTotalPagar(2);
     record.setValorCuota(2);*/
     
     //System.out.println(campos[0]);
     System.out.println("");
     
    }
     //pdfPrueba.getMapaRecords().put(record.getRutDeudor(), record);
         
     for(int a =0;a<pdfPrueba.getTrash().size();a++){
    //System.out.println("Palabras basuras : "+pdfPrueba.getTrash().get(a));
   
     }
    } 
     
     //FIN PRUEBA HASHMAP
     
     //Resto de codigo respaldado en mis documentos...
  }catch( FileNotFoundException e ){
             e.printStackTrace();
     }
}
}
}]


y aca el metodo que modifique para que considere las palabras vetadas
Código (java) [Seleccionar]
public Boolean compararLinea(String linea){
for(int i=0;i<trash.size();i++){
//if(trash.get(i).toString().equalsIgnoreCase(linea))
if(trash.get(i).toString().contains(linea))
{
return true;
}
}
return false;
}
#3
Sigo sin poder lograrlo :/ agradecería ayuda...
#4
Estimado, aun me arroja palabras vetadas sigue igual que el código que pegue mas arriba.
#5
Gracias por la respuesta entiendo mas menos la lógica de que ya las palabras basura se están leyendo y están por así llamarlo en consideración, pero mi problema es que cuando ejecuto me siguen apareciendo palabras vetadas y es ah donde no puedo o no entiendo como hacerlas desaparecer, ya que son palabras que no utilizare y están agregadas a mi archivo de palabras no utilizables, acá un ejemplo de la salida: (espero se entienda) Saludos y gracias.

Código (apache) [Seleccionar]
este es el campo rut R.U.T.
este es el campo rut VALOR
este es el campo rut CUOTAS
este es el campo rut DESCONTADAS
este es el campo rut ANTECEDENTES
este es el campo rut (-)
este es el campo rut TOTAL
este es el campo rut 1
este es el campo rut -
este es el campo rut
este es el campo rut
este es el campo rut 51/58
este es el campo rut 001
este es el campo rut 12.852.945-4
este es el campo rut 16.995.070-9
este es el campo rut 6.002.779-K
este es el campo rut 9.678.656-5
este es el campo rut 16.339.547-9
este es el campo rut 16.906.181-5
este es el campo rut SOLUCIONES
este es el campo rut FOLIO:
este es el campo rut OFICINA
este es el campo rut FOLIO
este es el campo rut CUOTA
este es el campo rut ANTICIPADAS
este es el campo rut DEL
este es el campo rut TOTAL
este es el campo rut TOTAL
este es el campo rut Firma
este es el campo rut 3
este es el campo rut
este es el campo rut -
este es el campo rut -
este es el campo rut 29.428.042
este es el campo rut 13.740.401-K
este es el campo rut 15.307.328-7
este es el campo rut 8.375.984-4
este es el campo rut 12.266.303-5
este es el campo rut 15.027.053-7
este es el campo rut 16.177.190-2
este es el campo rut 10.670.274-8
este es el campo rut DE
este es el campo rut Correspondiente
este es el campo rut R.U.T.
este es el campo rut VALOR
este es el campo rut CUOTAS
este es el campo rut DESCONTADAS
este es el campo rut ANTECEDENTES
este es el campo rut (-)
este es el campo rut TOTAL
este es el campo rut 1
este es el campo rut -
este es el campo rut
este es el campo rut
este es el campo rut 53/58
este es el campo rut 001
este es el campo rut 11.580.285-2
este es el campo rut 7.455.944-1
este es el campo rut 11.673.974-7
este es el campo rut 13.680.863-K
este es el campo rut 16.129.538-8
este es el campo rut 13.639.428-2
este es el campo rut SOLUCIONES
este es el campo rut FOLIO:
este es el campo rut OFICINA
este es el campo rut FOLIO
este es el campo rut CUOTA
este es el campo rut ANTICIPADAS
este es el campo rut DEL
este es el campo rut TOTAL
este es el campo rut TOTAL
este es el campo rut Firma
este es el campo rut 3
este es el campo rut
este es el campo rut -
este es el campo rut -
este es el campo rut 29.428.042
este es el campo rut 6.478.834-5
este es el campo rut 11.269.763-2
este es el campo rut 6.758.763-4
este es el campo rut 10.350.017-6
este es el campo rut 8.190.310-7
este es el campo rut 15.091.280-6
este es el campo rut 11.707.872-8
este es el campo rut DE
este es el campo rut Correspondiente
este es el campo rut R.U.T.
este es el campo rut VALOR
este es el campo rut CUOTAS
este es el campo rut DESCONTADAS
este es el campo rut ANTECEDENTES
este es el campo rut (-)
este es el campo rut TOTAL
este es el campo rut 1
este es el campo rut -
este es el campo rut
este es el campo rut
este es el campo rut 55/58
este es el campo rut 001
este es el campo rut 11.472.422-K
este es el campo rut 13.919.571-K
este es el campo rut 16.621.197-2
este es el campo rut 11.901.730-0
este es el campo rut 6.973.812-5
este es el campo rut 14.468.911-9
este es el campo rut SOLUCIONES
este es el campo rut FOLIO:
este es el campo rut OFICINA
este es el campo rut FOLIO
este es el campo rut CUOTA
este es el campo rut ANTICIPADAS
este es el campo rut DEL
este es el campo rut TOTAL
este es el campo rut TOTAL
este es el campo rut Firma
este es el campo rut 3
este es el campo rut
este es el campo rut -
este es el campo rut -
este es el campo rut 29.428.042
este es el campo rut 11.491.865-2
este es el campo rut 14.494.566-2
este es el campo rut 8.964.389-9
este es el campo rut 14.242.049-K
este es el campo rut 13.014.367-9
este es el campo rut 13.323.142-0
este es el campo rut 14.321.086-3
este es el campo rut DE
este es el campo rut Correspondiente
este es el campo rut R.U.T.
este es el campo rut VALOR
este es el campo rut CUOTAS
este es el campo rut DESCONTADAS
este es el campo rut ANTECEDENTES
este es el campo rut (-)
este es el campo rut TOTAL
este es el campo rut 1
este es el campo rut -
este es el campo rut
este es el campo rut
este es el campo rut 57/58
este es el campo rut 001
este es el campo rut 9.157.089-0
este es el campo rut 15.407.479-1
este es el campo rut 14.264.931-4
este es el campo rut 7.737.233-4


#6
Estimados junto con saludar me dirijo a ustedes para solicitar ayuda con respecto a algo que estoy desarrollando.

mi problema radica básicamente en que debo realizar una comparación de datos entre un archivo de texto y otro generado desde un pdf,  el archivo pdf me genera datos basura que no utilizare para comparar, y estos datos los puse en un txt que pretendo utilizar para que no los
tome en cuenta cuando compare y es acá donde no se como llevar a cabo eso. Agradeciera si me pudieran ayudar a ver la luz con este asunto ya que  me tiene arrojando humo por la cabeza xD

la clase donde tengo los métodos es así:

Desde ya agradezco la ayuda a todos. Saludos y buen día
Código (java) [Seleccionar]
public class PdfFile extends Files{

private int folio;
private Date periodoPago;
private String nombreEmpresa;
private float totalMes;
private ArrayList trash;


public  PdfFile(){
if(trash==null){
trash = new ArrayList();


}
}

public PdfFile(int codigoOficina, String rutEmpresa, int codigoNomina,
Date fechaVencimiento, int folio, Date periodoPago,
String nombreEmpresa, float totalMes) {
super(codigoOficina, rutEmpresa, codigoNomina, fechaVencimiento);
this.folio = folio;
this.periodoPago = periodoPago;
this.nombreEmpresa = nombreEmpresa;
this.totalMes = totalMes;
}
public int getFolio() {
return folio;
}
public void setFolio(int folio) {
this.folio = folio;
}
public Date getPeriodoPago() {
return periodoPago;
}
public void setPeriodoPago(Date periodoPago) {
this.periodoPago = periodoPago;
}
public String getNombreEmpresa() {
return nombreEmpresa;
}
public void setNombreEmpresa(String nombreEmpresa) {
this.nombreEmpresa = nombreEmpresa;
}
public float getTotalMes() {
return totalMes;
}
public void setTotalMes(float totalMes) {
this.totalMes = totalMes;
}
public ArrayList getTrash() {
return trash;
}
public void setTrash(ArrayList trash) {
this.trash = trash;
}

public Boolean compararLinea(String linea){
for(int i=0;i<trash.size();i++){
if(trash.get(i).toString().equalsIgnoreCase(linea)){
return true;
}else{
return false;
}
}
return false;
}

public void llenarArreglo(String file) throws IOException{
BufferedReader reader = new BufferedReader(new FileReader(file));
while(reader.ready()){
trash.add(reader.readLine());
}
}
}


Código (java) [Seleccionar]
public class ComparaTxtPdf {

public void compararNominas() throws IOException{

String descptnFile  = "C:\\Log.txt";
//aca debo de capturar los archivos con los mismos nombres, ya que los documentos se rigen por una nomenclatura
//esto es para pruebas
File dirTxt = new File("C:\\NominasTxt\\");
String[] nominasTxt = dirTxt.list();

File dirConver = new File("C:\\PDFconver\\");
String[] converTxt = dirConver.list();

PdfFile pdfPrueba = new PdfFile();

for (int x=0;x<nominasTxt.length;x++){//SE RECORRE EL ARREGLO CON LOS NOMBRES DE ARCHIVO
           String mandante=("C:\\NominasTxt\\"+nominasTxt[x]);//SE ALMACENA LA RUTA DEL ARCHIVO A LEER.
           
           //no es necesario recorrer los pdf, ya que solo se necesita comparara el txt con los valores de las nominas que ya estan dentro de un fichero, se sugiere usar
           //hashmap para guardar los pdf
           
           for (int i=0;i<converTxt.length;i++){//SE RECORRE EL ARREGLO CON LOS NOMBRES DE ARCHIVO
           String aComparar=("C:\\PDFconver\\"+converTxt[i]);            
         
    try{
    // Crea los archivos leer archivo escribir archivo
    FileReader actualFileReader  = new FileReader(mandante);
    FileReader expctdFileReader  = new FileReader(aComparar);

    FileWriter resultDesc = new FileWriter(descptnFile);    
   
    //PRUEBA HASHMAP
    //asigno el string que necesita el metodo llenarArreglo de la clase PdfFile
    pdfPrueba.llenarArreglo("C:\\palabrasVetadas.txt");
   
    BufferedReader expcFileBufRdr = new BufferedReader(expctdFileReader);
   
    String[] campos=null;
   
    String rut,nombre=" ";
    int cuota, folioCredito, totalCuotas, tolalPagar, valorCuota;
   
   while(expcFileBufRdr.ready()){
   
    Record record = new Record();
   
   if(!pdfPrueba.compararLinea(expcFileBufRdr.readLine()) && expcFileBufRdr.readLine()!=null){
   
    campos = expcFileBufRdr.readLine().split(" ");
    record.setRutDeudor(campos[0]);
    record.setCuota(1);
    record.setFolioCredito(1);
    record.setNombreDeudor("");
    record.setTotalCuotas(1);
    record.setTotalPagar(2);
    record.setValorCuota(2);
   
    System.out.println("este es el campo rut " + campos[0]);
   
    //System.out.println("Tamano arreglo" + pdfPrueba.getPalabrasBasuras().size());
    //pdfPrueba.llenarArreglo("C:\\palabrasVetadas.txt");

    //System.out.println("Tamano arreglo" + pdfPrueba.getPalabrasBasuras().size());
   
    for(int a =0;a<pdfPrueba.getTrash().size();a++){
    //System.out.println("Palabras basuras : "+pdfPrueba.getTrash().get(a));
   
    }
   
   }  
   }    
    //FIN PRUEBA HASHMAP    
    }
    catch( FileNotFoundException e ){
            e.printStackTrace();
    }
}
}
}
}