Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea


Objetivo: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
saludos de nuevo
vi oportuno hacer un nuevo post sobre este asunto no repetirlo

en si lo que quiero es poder selecionar que linea de un archivo de texto se va leer y se va a pasar aun control textarea

en un post anterior pusieron codigo para ahcerlo de forma random pero lo que busco es hacerlo

segun un indice digamoslo asi por ejemplo

si el dia de hoy 16 de junio del 2010 convertirlo a entero digamos que sea 190 entonces la linea para leer y cargar en un control textarea va a ser la 190
y asi sucesivamente hasta fin de año

gracias de antemano por al ayuda dada

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
1) Haz clic con el botón derecho sobre la carpeta "Datos", y selecciona Nuevo->Otros->Texto.(Deja el nombre Text1 que da por defecto)
2) Agrega dentro del archivo de texto lo siguiente:

texto[1]
"Recordatorio 1"
texto[168]
"Recordatorio2"
texto[169]
"Recordatorio3"
texto[170]
"Recordatorio4"
texto[171]
"Recordatorio5"
texto[360]
"Recordatorio6"
texto[361]
"Recordatorio7"

Nota: Si te fijas los números se van saltando, te toca agregar los demás mensajes y numerarlos en secuencia

3) Utilizando la función que te envió JGUARDON y agregandola al código quedaría:

' gambas class file

PUBLIC SUB Form_Open()
'==================================================================
'PROPOSITO: Leer una cadena desde un archivo de texto, cada vez que
'se abra el programa.
'==================================================================
DIM archivo AS File
DIM linea AS String
DIM dia AS String
DIM texto AS String

dia = Str(dayOfYear())
texto = "texto" & "[" & dia & "]"
'-------------------------------Abrimos el archivo en modo lectura
archivo = OPEN "Text1" FOR INPUT

'- - - - - - - - - - - - - - - - - - - - - - Mientras no sea el final del archivo
WHILE NOT Eof(archivo)
'----------------------------Leer una linea
LINE INPUT #archivo, linea
'-----------------------Si la linea concuerda con el patron de busqueda
IF texto = linea THEN
'---------------------------------Leer linea siguiente.
LINE INPUT #archivo, linea
'---------------------Mostrar la linea
TextBox1.Text = linea
END IF
WEND
END

PUBLIC FUNCTION dayOfYear() AS Integer
DIM myDate AS Date
myDate = Date(Year(Now), 1, 1)
RETURN DateDiff(myDate, Now, gb.Day) + 1
END


Saludos

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
muchas gracias por al ayuda
estoy examinado el codigo
y funciona esrtoy cambiando las fecha y funciona

ahora la siguiente duda buneo son dos

se puede dar formato al texto
me refiero a que lo que voy a poner es bastante largo oi or ahi algo de la expresion vuelta de carro


otra duda es si quisiera agregarle 3 botones
que serian anterior, hoy, siguiente . Y que esto sirvan para ver mensajes anteriorer del dia y siguientes
estos me permiten ver textso anteriores del dia y siguinetes
tambien estaba pensando agregar un control de fecha para directamente selecionar la fecha y por ende que se muestre el texto ya mencionado






de nuevo muchas gracias por la ayuda

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
vikobak escribió: [Ver mensaje]
muchas gracias por al ayuda
estoy examinado el codigo
y funciona esrtoy cambiando las fecha y funciona

ahora la siguiente duda buneo son dos

se puede dar formato al texto
me refiero a que lo que voy a poner es bastante largo oi or ahi algo de la expresion vuelta de carro


Con el textarea no se puede. Debes de activar el componente gb.qt.ext y usar TextEdit en su lugar, que acepta unas pocas etiquetas HTML, por ejemplo <b>negrita</b> o <i>cursiva</i> incluso colores <font color=\"#FF0000\">texto</font>
(Nótese la barra invertida para escapar las comillas).

Para agregar un salto de línea (o retorno de carro, en Windows) hay varias formas, pero la más sencilla en linux es el carácter de nueva línea "\n" (sin las comillas). Pero en el caso que nos ocupa, el TextEdit no lo reconoce, por tanto tendrás que usar la etiqueta html <br>.

http://gambasdoc.org/help/comp/gb.qt.ext/textedit?es

Citar:

otra duda es si quisiera agregarle 3 botones
que serian anterior, hoy, siguiente . Y que esto sirvan para ver mensajes anteriorer del dia y siguientes
estos me permiten ver textso anteriores del dia y siguinetes
tambien estaba pensando agregar un control de fecha para directamente selecionar la fecha y por ende que se muestre el texto ya mencionado


En el código que puso abarzuaf tienes la respuesta. Sólo hay que modificarlo y convertirlo en un procedimiento que acepte un parámetro opcional entero para el día del año y en los botones anterior y siguiente sumar o restar 1 a la variable "dia".

Algo así:


' gambas class file

PRIVATE dia AS Integer

PUBLIC SUB obtenerDia(OPTIONAL quedia AS Integer)
'==================================================================
'PROPOSITO: Leer una cadena desde un archivo de texto a partir del día del año
'==================================================================
DIM archivo AS File
DIM linea AS String
DIM texto AS String

IF NOT quedia THEN quedia = dayOfYear()
dia = quedia
texto = "texto" & "[" & CStr(quedia) & "]"
'-------------------------------Abrimos el archivo en modo lectura
archivo = OPEN "Text1" FOR INPUT

'- - - - - - - - - - - - - - - - - - - - - - Mientras no sea el final del archivo
WHILE NOT Eof(archivo)
'----------------------------Leer una linea
LINE INPUT #archivo, linea
'-----------------------Si la linea concuerda con el patron de busqueda
IF texto = linea THEN
'---------------------------------Leer linea siguiente.
LINE INPUT #archivo, linea
'---------------------Mostrar la linea
TextBox1.Text = linea
END IF
WEND
END

' Botones anterior, siguiente, hoy
PUBLIC SUB BotonAnterior_Click()
dia -= 1 ' igual que hacer dia = dia - 1
obtenerDia(dia)

END

PUBLIC SUB BotonSiguiente_Click()
dia += 1 ' igual que hacer dia = dia + 1
obtenerDia(dia)

END

PUBLIC SUB BotonHoy_Click()

obtenerDia()

END

PUBLIC FUNCTION dayOfYear() AS Integer
DIM myDate AS Date
myDate = Date(Year(Now), 1, 1)
RETURN DateDiff(myDate, Now, gb.Day) + 1
END



Habría que contemplar la posibilidad de años bisiestos y también controlar que si estás a 31 de diciembre pase al 1 de enero al pulsar siguiente y lo mismo para el 1 de enero al 31 de diciembre al pulsar anterior.

No lo he probado, pero debería funcionar.

Saludos

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
hce muchas gracias voy a probarlo y aver como anda


de nuevo muchas gracias

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
tambine seria muy buneo si podes explicar algunas partes del codigo puesta

eso ayudaria enel futuro a hacer de el una referncia oportuna


como tambien de lagunas palabras especificas de gambas



gracias de natemano

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
vikobak escribió: [Ver mensaje]
tambine seria muy buneo si podes explicar algunas partes del codigo puesta

eso ayudaria enel futuro a hacer de el una referncia oportuna

como tambien de lagunas palabras especificas de gambas

gracias de natemano


¿Es que no está suficientemente comentado el código????

Qué necesitas entonces, un profesor particular?? Por favor, no te ofendas, pero pon algo de tu parte si de verdad quieres aprender.

Lee el libro de gambas y la propia ayuda de gambas, en esta última encontrarás para qué sirven y cómo se utilizan todas las palabras de gambas.

También aquí: http://gambasdoc.org/help/lang?es

Saludos

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
primero me disculpo si e causado algo de molestia

segundo tenes razon para aprender hay que leer y buneo practicar

sin embargo senecesita de estos foros para poder ser mas detallista y buneo eso es lo que hago


estoy viendo el libro de gambas

pero la ayuda no me funciona o no se muestra

uso gambas 2 en ubuntu 10.04

no seporque e instalado casi todo lo que dice gambas desde mi repo

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
No, no es molestia ninguna. Además los foros están para preguntar, pero a veces hay que elaborar más las preguntas demostrando que se intenta llegar a la solución de un problema. A veces nos volvemos un poco "perezosos".

Cuando la persona que intenta ayudarte te pone el código con la solución a tu problema, siempre es bueno jugar con él y cambiar cosas para ver cómo afecta a su funcionamiento. Eso te ayudará a comprender mejor cómo funciona, pero si lo que hacemos es simplemente copy&paste, nunca sabremos cómo y porqué funciona. Siéntete libre de preguntar, pero mejor sobre algo que hayas probado y no te funcione, o por ejemplo sobre cómo diseñar tu aplicación, o cómo organizar el código, o sobre cómo usar una sintaxis concreta... En fin, lo que quieras, pero que se vea que has trabajado o investigado algo antes. Por supuesto, no es una obligación, pero de esa forma será más fácil obtener la ayuda que necesites.

Respecto a la ayuda de gambas, comprueba que has instalado el paquete gambas2-doc. Ese paquete proporciona aplicaciones de ejemplo y la ayuda desde F1 y F2 cuando te posicionas sobre una palabra clave. Si aún así no te funciona, comprueba que tienes asociado el tipo de archivo .html con la aplicación Firefox.

A mi me funciona correctamente, si bien es verdad que trabajo con Gambas2 2.20.2 compilado desde los fuentes. Desconozco si la versión de los repositorios tiene algún problema con la ayuda.

Un cordial saludo.

Perfil MP  
Objetivo: Re: Selecionar Que Linea Leer De Un Archivo De Texto Y Pasarlo A Un Textarea
Ratifico que si que funciona.
Ayer no se me abria, pero he asocie lo que has dicho y si me funciono. Y tengo la version de repositorios y tu misma distro.

Saludos!

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4978s (PHP: -73% SQL: 173%)
Consultas SQL: 44 - Debug off - GZIP Activado