Trabajar con cadenas de caracteres muy grandes

Gracias por tu ayuda en mi pregunta pasada sobre la lectura de archivos de texto con visual basic.
Una duda, los textos .txt que quiero leer tienen una codificación especifica... Se identifican los saltos de linea con un cuadrado, si los leo con una codificación windows no hay ningún problema, pero cuando las leo con .readLine en Visual basic me lee todo el texto de una vez, con lo cual no tengo suficiente memoria. ¿Cómo podría indicar que me leyera hasta el primer salto de linea indicado por "un cuadrado" (no se que codifo ascii es)?

1 respuesta

Respuesta
1
Tendría que ver tu archivo, ya que los caracteres pueden ser algo o nada.
Normalmente, siempre leo este tipo de archivos aunque sean muy grandes, y si no identifica algún enter, leo dato por dato y armo sentencias o partes de registro como se desea por el sistema...
Bueno, a ver si me explico, es muy extraño...
El texto original en el archivo .txt delimita cada linea con un símbolo que es un cuadrado que debe ser el salto de línea.
Cuando copio y pego parte del texto de ese archivo en cualquier otro sitio, por ejemplo, el pedazo que te he copiado aquí, parece ser que se identifica como salto de linea (esos cuadrados), si abro el archivo con microsoft word, entonces me pide que le diga que codificación utilizar, yo le digo que windows y también me lo abre identificando los cuadrados como saltos de linea. Si copio y pego en el notepad me sigue copiando los cuadrados.
Y en el Visual Basic que es donde me interesa, no me consigue leer solo una linea que sería lo ideal, creo que al no identificar los cuadrados como saltos de linea, pues me lee todo el documento de una vez.
¿Qué me recomiendas?, muchas gracias, a continuación puedes ver parte del documento del cual me interesa extraer los datos entre comillas, que corresponden a valores de temperatura con fecha y hora de diferentes sensores.
Gracias.
"< Measurement Data Text Output >"
""
"Date/Time" "@date()" "ch.1" "ch.2" "ch.3" "ch.4" "ch.5" "ch.6" "ch.7" "ch.8"
"" "" "°C" "°C" "" "" "" "" "" ""
"06/22/2006 09:00'00" "38890.3750000000" " 27.0000" " 50.0000" "" "" "" "" "" ""
"06/22/2006 09:05'00" "38890.3784722222" " 27.8000" " 59.0000" "" "" "" "" "" ""
"06/22/2006 09:10'00" "38890.3819444444" " 35.6000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 09:15'00" "38890.3854166667" " 31.2000" " 56.0000" "" "" "" "" "" ""
"06/22/2006 09:20'00" "38890.3888888889" " 31.0000" " 60.0000" "" "" "" "" "" ""
"06/22/2006 09:25'00" "38890.3923611111" " 30.8000" " 56.0000" "" "" "" "" "" ""
"06/22/2006 09:30'00" "38890.3958333333" " 30.9000" " 57.0000" "" "" "" "" "" ""
"06/22/2006 09:35'00" "38890.3993055556" " 30.5000" " 55.0000" "" "" "" "" "" ""
"06/22/2006 09:40'00" "38890.4027777778" " 30.9000" " 57.0000" "" "" "" "" "" ""
"06/22/2006 09:45'00" "38890.4062500000" " 31.3000" " 57.0000" "" "" "" "" "" ""
"06/22/2006 09:50'00" "38890.4097222222" " 31.4000" " 54.0000" "" "" "" "" "" ""
"06/22/2006 09:55'00" "38890.4131944444" " 32.0000" " 53.0000" "" "" "" "" "" ""
"06/22/2006 10:00'00" "38890.4166666667" " 32.0000" " 52.0000" "" "" "" "" "" ""
"06/22/2006 10:05'00" "38890.4201388889" " 32.7000" " 53.0000" "" "" "" "" "" ""
"06/22/2006 10:10'00" "38890.4236111111" " 32.9000" " 53.0000" "" "" "" "" "" ""
"06/22/2006 10:15'00" "38890.4270833333" " 33.4000" " 51.0000" "" "" "" "" "" ""
"06/22/2006 10:20'00" "38890.4305555556" " 33.3000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 10:25'00" "38890.4340277778" " 33.0000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 10:30'00" "38890.4375000000" " 33.2000" " 50.0000" "" "" "" "" "" ""
"06/22/2006 10:35'00" "38890.4409722222" " 32.5000" " 46.0000" "" "" "" "" "" ""
"06/22/2006 10:40'00" "38890.4444444444" " 33.2000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 10:45'00" "38890.4479166667" " 34.3000" " 45.0000" "" "" "" "" "" ""
"06/22/2006 10:50'00" "38890.4513888889" " 33.0000" " 45.0000" "" "" "" "" "" ""
"06/22/2006 10:55'00" "38890.4548611111" " 33.6000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 11:00'00" "38890.4583333333" " 34.7000" " 48.0000" "" "" "" "" "" ""
"06/22/2006 11:05'00" "38890.4618055556" " 33.8000" " 44.0000" "" "" "" "" "" ""
"06/22/2006 11:10'00" "38890.4652777778" " 34.4000" " 46.0000" "" "" "" "" "" ""
"06/22/2006 11:15'00" "38890.4687500000" " 36.0000" " 47.0000" "" "" "" "" "" ""
"06/22/2006 11:20'00" "38890.4722222222" " 36.4000" " 44.0000" "" "" "" "" "" ""
"06/22/2006 11:25'00" "38890.4756944444" " 36.4000" " 43.0000" "" "" "" "" "" ""
"06/22/2006 11:30'00" "38890.4791666667" " 36.6000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 11:35'00" "38890.4826388889" " 36.7000" " 43.0000" "" "" "" "" "" ""
"06/22/2006 11:40'00" "38890.4861111111" " 36.9000" " 43.0000" "" "" "" "" "" ""
"06/22/2006 11:45'00" "38890.4895833333" " 36.6000" " 45.0000" "" "" "" "" "" ""
"06/22/2006 11:50'00" "38890.4930555556" " 36.8000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 11:55'00" "38890.4965277778" " 37.1000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 12:00'00" "38890.5000000000" " 36.0000" " 44.0000" "" "" "" "" "" ""
"06/22/2006 12:05'00" "38890.5034722222" " 37.0000" " 43.0000" "" "" "" "" "" ""
"06/22/2006 12:10'00" "38890.5069444444" " 37.7000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 12:15'00" "38890.5104166667" " 38.0000" " 40.0000" "" "" "" "" "" ""
"06/22/2006 12:20'00" "38890.5138888889" " 37.8000" " 38.0000" "" "" "" "" "" ""
"06/22/2006 12:25'00" "38890.5173611111" " 37.4000" " 41.0000" "" "" "" "" "" ""
"06/22/2006 12:30'00" "38890.5208333333" " 37.0000" " 41.0000" "" "" "" "" "" ""
"06/22/2006 12:35'00" "38890.5243055556" " 38.1000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 12:40'00" "38890.5277777778" " 37.5000" " 41.0000" "" "" "" "" "" ""
"06/22/2006 12:45'00" "38890.5312500000" " 37.0000" " 39.0000" "" "" "" "" "" ""
"06/22/2006 12:50'00" "38890.5347222222" " 35.7000" " 39.0000" "" "" "" "" "" ""
"06/22/2006 12:55'00" "38890.5381944444" " 36.1000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 13:00'00" "38890.5416666667" " 36.4000" " 44.0000" "" "" "" "" "" ""
"06/22/2006 13:05'00" "38890.5451388889" " 35.9000" " 43.0000" "" "" "" "" "" ""
"06/22/2006 13:10'00" "38890.5486111111" " 35.9000" " 39.0000" "" "" "" "" "" ""
"06/22/2006 13:15'00" "38890.5520833333" " 36.1000" " 39.0000" "" "" "" "" "" ""
"06/22/2006 13:20'00" "38890.5555555556" " 36.7000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 13:25'00" "38890.5590277778" " 36.8000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 13:30'00" "38890.5625000000" " 35.8000" " 40.0000" "" "" "" "" "" ""
"06/22/2006 13:35'00" "38890.5659722222" " 35.7000" " 42.0000" "" "" "" "" "" ""
"06/22/2006 13:40'00" "38890.5694444444" " 35.3000" " 40.0000" "" "" "" "" "" ""
"06/22/2006 13:45'00" "38890.5729166667" " 36.0000" " 42.0000" "" "" "" "" "" ""
Pues aquí no se ven los espacios, solo que me mandes el archivo y el siguiente lunes te comento como va...
David, perdona pero es que no se como enviarte el archivo por aquí... ya queno aparece tu email.
La he buscado por la web, a ver si he acertado y te ha llegado a tu email, seguimos en contacto por email entonces. Muchas gracias por todo, saludos!
Ok, si llego uno, por lo tanto podemos cerrar la pregunta por este lado...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas