Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/05/2011, 10:29
Avatar de Hugo_Euan
Hugo_Euan
 
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Buscar una cadena de texto en un archivo txt y devolver un resultado.

En efecto como comentas, la palabra 1 se busca en el archivo 1, la palabra 2 se busca en el archivo 2 y así suscesivamente...
pero bien, hice unas modificaciones de tal manera que, palabra1, 2, 3, 4, N.... se busque en el archivo 1 y así suscesivamente, creo que es eso a lo que te referias...
pues bien el código queda como sigue.

Código HTML:
Ver original
  1. <title>Search</title>
  2. var text, NumFiles, Get, Count=0, Extend='.txt';
  3. var Review = {Files:['Test', 'Test2', 'Test3'],
  4.     Content:['hymenaeos', 'otra palabra', '2353']};
  5.    
  6.     function INITIALIZED(){var a=document.getElementById("Console");a.value="-> INIZIALIZANDO... \n";NumFiles=Review.Files.length;a.value+="-> Cargando y preparando los archivos de registro... Espere un momento por favor... \n";Get=setInterval("GET_FILE();",2E3)}
  7. function GET_FILE(){var a=document.getElementById("textReader");Count>=NumFiles?(a=document.getElementById("sal"),a.innerHTML+=" | Todos los archivos han sido Procesados",a=document.getElementById("deb"),a.innerHTML="Debugger: [OK]",clearInterval(Get)):(a.src=Review.Files[Count]+Extend,a=document.getElementById("sal"),a.innerHTML="Console: Procesando archivo ("+(Count+1)+" de "+Review.Files.length+")",a=document.getElementById("deb"),a.innerHTML="Debugger: Inspeccionando "+Review.Files[Count]+Extend,
  8. setTimeout("text = getContent();",1E3))}
  9. function getContent(){var a=document.getElementById("Console"),c=document.getElementById("Debbugger");a.value=a.value+"-> Abriendo Archivo "+Review.Files[Count]+" \n";c.innerHTML=c.innerHTML+'<br /><br /><span style="background-color:#FF0; color:#F00;"><h3>---------\> Registro del archivo <strong>"'+Review.Files[Count]+Extend+' "</strong></h3></span>';var d=c.innerHTML,b,e=document.getElementById("textReader"),f="";try{if(e.contentDocument)b=e.contentDocument,f=b.getElementsByTagName("BODY")[0].innerHTML;
  10. else if(e.contentWindow)f=e.contentWindow.document.body.innerHTML;for(b=0;b<Review.Content.length;b++)if(a.value=a.value+'-> Buscando Coinsidencia "'+Review.Content[b]+'" dentro del archivo '+Review.Files[Count]+Extend+"... \n",f.indexOf(Review.Content[b])>-1)var g='<br /><input type="button" style="width:20px; height:20px; background-color:#0F0; border:none;" />',d=d+g+"&nbsp;&nbsp;&nbsp;Se encontr&oacute; la coincidencia <strong>"+Review.Content[b]+"</strong> dentro del archivo <strong>"+Review.Files[Count]+
  11. Extend+"</strong>";else g='<br /><input type="button" style="width:20px; height:20px; background-color:#F00; border:none;" />',d=d+g+"&nbsp;&nbsp;&nbsp;No se encontr&oacute; coincidencia para <strong>"+Review.Content[b]+"</strong> dentro del archivo <strong>"+Review.Files[Count]+Extend+"</strong>";c.innerHTML=d;a.value=a.value+"-> Cerrando Archivo "+Review.Files[Count]+" \n";a.scrollTop=a.scrollHeight}catch(h){c.innerHTML=c.innerHTML+'<br /><input type="button" style="width:20px; height:20px; background-color:#F00; border:none;" /><label style="color:#F00">&nbsp;&nbsp;&nbsp;Error al intentar acceder a el archivo '+
  12. Review.Files[Count]+Extend+" puede que el archivo est&eacute; corrupto o no exista.<br /></label>"}Count++};
  13. </head>
  14. <iframe id="textReader" style="display:none;"></iframe>
  15. <input type="button" value="Revisar Archivos..." onClick="INITIALIZED();" />
  16. </form>
  17. <div id="sal">Console:</div><br />
  18. <textarea id="Console" style="font-family:Arial; background-color:#FFF; font-size:14px; overflow:auto; width:100%; height:100px; border:1px #999 solid;">&nbsp;</textarea><br /><br />
  19. <div id="deb">Debugger:</div><br />
  20. <div id="Debbugger">&nbsp;</div>
  21. </body>
  22. </html>

lo que tienes que cambiar como siempre es la variable JSON

var Review = {Files:['Testx', 'Test2', 'Test3'],
Content:['hymenaeos', 'otra palabra', '2353']};


de la misma manera que lo hiciste anteriormente...
solo que ahora Files y Content son independientes, es decir, no necesitas tener el mismo numero de Content que de Files como en el anterior....
puedes tener 3 Files y 100 Contents o al revez, pruebalo y dime que tal te va =D

SALUDOS y EXITO !!!!
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!