Lectura archivo de texto, javascript

Tengo un archivo de texto en el cliente que deseo leer linea por linea para poder procesar cierta información pero al realizar un while for endatstream me sale un mensaje de que se ha sobrepasado el fin de archivo y termina sale sin terminar de procesar toda la información, necesito ayuda pues me parece que lo estoy haciendo bien.

1 respuesta

Respuesta
1
Nunca uso ActiveX, así que no se como ayudarte.
Según veo, te falta un "{" después del do (en el do... while). Según entiendo yo, falta controlar llegar al tipoco EOF (end of file) de cualquier lenguaje de programación que use ficheros, pero no se como va. He buscado por ahí y he encontrado algún ejemplo:
http://www.codeproject.com/jscript/oojsgrep.asp
http://oldlook.experts-exchange.com:8080/Web/Web_Languages/XML/Q_20779424.html
Se basan en ver que la linea que lees no es null, pero no he conseguido que me funcione...
No se como ayudarte, tal vez mira esos ejemplos y a lo mejor encuentras la manera de hacerlo.
También he visto que en algunos sitios usan un ReadAll()... que tal vez te pueda venir bien (?).
Siento no poder ayudarte más.
Muchas gracias por la ayuda y aquí va el código, el problema está cuando finaliza la lectura del archivo plano y me da un mensaje de fin de archivo y no ejecuta más instrucciones y se trunca
Gracias otra vez
<html>
<head>
<br>
<title> "Impresión de datos de Archivo Plano" </title>
<script language="JavaScript">
function verarchivo()
{
var archivo;
var linea;
var codofi,cert,tippag,cuedeb,valor,fecing,codpro,codace,espacio
var valorint, parcialstr, totalvalor = 0, espacio = " "
var fso = new ActiveXObject("Scripting.FileSystemObject");
archivo = document.form1.archivo.value;
var a = fso.OpenTextFile(archivo, 1, false);
document.write("Ruta del Archivo para impresión: " + document.form1.archivo.value + "<br>" + "<br>" + "<br>") ;
do
linea = (a.Readline());
codofi = linea.substring(0,3);
cert = linea.substring(3,9);
tippag = linea.substring(9,10);
cuedeb = linea.substring(10,20);
valor = linea.substring(20,31);
valorint = new Number(valor/100)
totalvalor = totalvalor + valorint
fecing = linea.substring(31,39);
codpro = linea.substring(39,42);
codace = linea.substring(42,43);
document.write(codofi + espacio + " ¦ " + "\t" + cert + "\t" + tippag + "\t" + cuedeb + "\t" + valorint + "\t" + fecing + "\t" + codpro + "\t" + codace + "\t" + "<br>" );
} while(!archivo.atEndOfStream)
a.Close();
alert(totalvalor)
}
</script>
</head>
<body>
<form name="form1">
<input type="file" name ="archivo">
<input type="button" value ="Cargar Archivo" onclick="verarchivo();">
</form>
</body>
</html>
Realmente te agradezco voy arevisar los ejemplos, que me indicas y te estoy avisando, realmente ese es el problema al encontrar un fin de archivo da un error y no ejecuta el resto, Te cuento mañana que paso
¿Estas accediendo a un fichero de texto con javascript?
¿No estarás usando vbscript o controles ActiveX?
¿Puedes enviarme el código que usas?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas