Foros del Web » Programando para Internet » ASP Clásico »

leyendo un txt???????????

Estas en el tema de leyendo un txt??????????? en el foro de ASP Clásico en Foros del Web. Amigos, Creo que el archivo lo encuentra y trata de leerlo pues me arroja el siguiente error: Error de Microsoft VBScript en tiempo de ejecución ...
  #1 (permalink)  
Antiguo 09/02/2003, 18:26
Avatar de univercity  
Fecha de Ingreso: noviembre-2002
Mensajes: 681
Antigüedad: 22 años, 6 meses
Puntos: 0
leyendo un txt???????????

Amigos,

Creo que el archivo lo encuentra y trata de leerlo pues me arroja el siguiente error:

Error de Microsoft VBScript en tiempo de ejecución error '800a003e'

Se sobrepasó el final del archivo

/travi/mailing/txt.asp, line 20


el archivo txt pesa 12,6 megas y es largisimo ahora yo quiero leer uno a uno pues el archivo tiene una lista y esta ordenada asi:

[email protected]
[email protected]
[email protected]
[email protected]

etc, etc.....



el scripts que estoy usando es este:

<%
'LECTURA DE UN ARCHIVO DE TEXTO
rutaArchivo = "1000000.txt"

Set fsLectura = Server.CreateObject("Scripting.FileSystemObject")
Set mArchivo = fsLectura.OpenTextFile(rutaArchivo,1,true)

response.write mArchivo.readAll
mArchivo.close
%>



ya se que donde tendria que cambiar es donde dice readAll pero como le pongo para que lea uno a uno?




espero me entiendan
slds.
__________________
"Lo importante es nunca dejar de hacerse preguntas"
Albert Einstein
  #2 (permalink)  
Antiguo 09/02/2003, 18:38
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 23 años, 3 meses
Puntos: 2
response.write mArchivo.readAll

es la linea 20?
__________________
Manual de ASP Avanzado ;-)
  #3 (permalink)  
Antiguo 09/02/2003, 20:55
Avatar de univercity  
Fecha de Ingreso: noviembre-2002
Mensajes: 681
Antigüedad: 22 años, 6 meses
Puntos: 0
Si, esa es la linea 20
__________________
"Lo importante es nunca dejar de hacerse preguntas"
Albert Einstein
  #4 (permalink)  
Antiguo 10/02/2003, 07:54
Avatar de univercity  
Fecha de Ingreso: noviembre-2002
Mensajes: 681
Antigüedad: 22 años, 6 meses
Puntos: 0
alguien me podria ayudar?...
__________________
"Lo importante es nunca dejar de hacerse preguntas"
Albert Einstein
  #5 (permalink)  
Antiguo 10/02/2003, 18:54
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 23 años, 3 meses
Puntos: 2
si tienes los mails separados por enter, es decir hacia abajo puedes utilizar el metodo ReadLine, que lee una linea completa

objeto.ReadLine

o puedes crear una funcion para leer un determinado numero de caracteres, siempre y cuando estos esten separados por algun caracter (coma, tab,etc)


pero te recomiendo mejor que utilizes la primera opcion

mira este ejemplo funciona pero no pude hacerlo dentro de un ciclo do..loop, asi que lo puse dentro de un ciclo for...next, si sabes el numero de mails debes colocarlo en la variable c

espero te de alguna idea
Saludos


<%response.buffer="true"
'LECTURA DE UN ARCHIVO DE TEXTO
rutaArchivo = "d:\contactos\contactos.txt"

Set fsLectura = Server.CreateObject("Scripting.FileSystemObject")
Set mArchivo = fsLectura.OpenTextFile(rutaArchivo,1,true)
c=100 ' numero de mails
for i = 1 to c
mail=mArchivo.readline
if len(marchivo.readline)=0 then
exit for
else
response.write mail&"<br>"
marchivo.skipline
end if
next
mArchivo.close
%>
__________________
Manual de ASP Avanzado ;-)
  #6 (permalink)  
Antiguo 10/02/2003, 21:51
Avatar de univercity  
Fecha de Ingreso: noviembre-2002
Mensajes: 681
Antigüedad: 22 años, 6 meses
Puntos: 0
Gracias, creo qu eso es lo que necesito lo estoy probando luego te cuento...
__________________
"Lo importante es nunca dejar de hacerse preguntas"
Albert Einstein
  #7 (permalink)  
Antiguo 24/03/2003, 11:23
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 6 meses
Puntos: 5
Construye la ruta del archivo de la siguiente manera para asegurarte que de verdad lo encuentra y lo puede leer perfectamente


Código PHP:
rutaArchivoRequest.ServerVariables("APPL_PHYSICAL_PATH") & "tuArchivo.txt" 
y ya podrás hacer el readAll sin que te devuelva ese error.

Añadir también que para saber si has llegado al final del archivo se puede usar:

Código PHP:
mArchivo.AtEndOfStream 
que devuelve true en caso de haber llegado al final del archivo. De esta manera no tendrás que establecer la variable c

Un beso
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:22.