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

error presentando parte de una cadena

Estas en el tema de error presentando parte de una cadena en el foro de ASP Clásico en Foros del Web. Cita: 19.- Como muestro las primeras 20 palabras deuna cadena y despues le pongo puntos suspensivos: Cadena="1 2 3 4 5 6 7 8 9 ...
  #1 (permalink)  
Antiguo 03/12/2002, 14:28
Avatar de zero_sos  
Fecha de Ingreso: noviembre-2002
Ubicación: Santo Domingo
Mensajes: 128
Antigüedad: 21 años, 7 meses
Puntos: 0
error presentando parte de una cadena

Cita:
19.- Como muestro las primeras 20 palabras deuna cadena y despues le pongo puntos suspensivos:

Cadena="1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22"
Cadena=Split(cadena," ")
For i =0 to 20
Response.Write Cadena(i)& " "
Next

lo intente de la siguiente manera:

Cadena= rs.fields("descripcion")
Cadena=Split(cadena," ")
For i =0 to 20
cadenapunto= cadenapunto + Cadena(i)& " "
Next

y en el cuerpo de mi html puse dentro de una tabla:

<td width="80%" align="center"><font face=arial size=2><%=cadenapunto%>&nbsp;</font></td>

sin embargo me esta dando el siguiente error en el Explorador:

Error Type:
Microsoft VBScript runtime (0x800A0009)
Subscript out of range: 'i'
/webnts/soporte/topcritbus.asp, line 190



Alguien tiene idea de que puede ser????, estoy apurado con el asunto... gracias por todo.

Zero.
  #2 (permalink)  
Antiguo 03/12/2002, 14:35
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Estoy casi seguro que el resultado de Cadena=Split(cadena," ") tiene menos de 20 "items" por lo que, al intentar llegar a 20, estás sobrepasando el último índice de cadena(i)
  #3 (permalink)  
Antiguo 03/12/2002, 14:49
Avatar de zero_sos  
Fecha de Ingreso: noviembre-2002
Ubicación: Santo Domingo
Mensajes: 128
Antigüedad: 21 años, 7 meses
Puntos: 0
Dazuaga, perdona la molestia pero como podria controlarlo??? osea que solo lo realice si la cadena pasa de 20???

Gracias mil.

Zero.
  #4 (permalink)  
Antiguo 03/12/2002, 15:25
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
A ver si esto te sirve:

cadena= rsFields("descripcion")

If len(cadena) > 20 Then
Reponse.Write(left(cadena, 20) & "...")
Else
Response.write(cadena)
End If

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 03/12/2002, 15:29
Avatar de zero_sos  
Fecha de Ingreso: noviembre-2002
Ubicación: Santo Domingo
Mensajes: 128
Antigüedad: 21 años, 7 meses
Puntos: 0
U_Goldman y Dazuaga muchas gracias por su ayuda funciono genial.

Zero
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 16:04.