Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Mr.Dudas en Mayo 31, 2013, 05:04:21 PM

Título: ¡SOLUCIOANDO!Buscar texto en un archivo *.txt
Publicado por: Mr.Dudas en Mayo 31, 2013, 05:04:21 PM
Como puedo hacer un script que busque por ejemplo una variable en un arhivo de texto y la lea(completa o mejor despues de lo que viene = que es lo que nos interesa) necesito un script mas o menos así:
scr_get_value(argument0,argument1)
argument0=nombre de archivo de texto
argument1=variable para buscar

Yo he intentado probar cosas en general ultilizando string_... pero no ha habido manera. Alguien sabe como hacerlo?


GRACIAS por tu tiempo  :P!
Título: Re:Buscar texto en un archivo *.txt
Publicado por: DEADOFALL en Junio 03, 2013, 04:19:15 PM
Recientemente tuve esa problemática con lo de cargar variables de archivos de texto externos. Que te digo, probé hacerlo con archivos de texto normales, pero entonces opté por usar .ini y me ha funcionado de perlas. Personalmente yo no he tenido nunca necesidad de hacer scripts por lo que no puedo darte el código de éste, pero sí puedo facilitarte, si os interesa, un ejemplo de cómo guardar y cargar variables de un .ini externo (incluso le puedes cambiar la extensión). Espero tu respuesta ;)
Título: Re:Buscar texto en un archivo *.txt
Publicado por: Mr.Dudas en Junio 03, 2013, 05:54:23 PM
Cita de: DEADOFALL en Junio 03, 2013, 04:19:15 PM
Recientemente tuve esa problemática con lo de cargar variables de archivos de texto externos. Que te digo, probé hacerlo con archivos de texto normales, pero entonces opté por usar .ini y me ha funcionado de perlas. Personalmente yo no he tenido nunca necesidad de hacer scripts por lo que no puedo darte el código de éste, pero sí puedo facilitarte, si os interesa, un ejemplo de cómo guardar y cargar variables de un .ini externo (incluso le puedes cambiar la extensión). Espero tu respuesta ;)
Bueno pues si me pudieras pasar el ejemplo te agradeceria, y posiblemente tendría el problema solucionado  :D .
Título: Re:Buscar texto en un archivo *.txt
Publicado por: brunoxzx en Junio 03, 2013, 06:14:44 PM
Yo también te recomiendo que uses .ini's o que le des un buen formato a tus archivos de texto si tienes algún problema con los .ini. Me refiero a algo como poner cada variable en una linea y su valor en la siguiente, o algo por allí, de ese modo podrías hacer un script algo más rápido.

Si no te gustan los archivos .ini (que puedes ir buscándolos en el manual son fáciles de usar) pon algún formato en el que quieras ordenar tu texto o mínimo dí que quieres el texto sin formato y aquí te ayudamos con el script.
Título: Re:Buscar texto en un archivo *.txt
Publicado por: romon_28 en Junio 03, 2013, 06:17:39 PM
scr_get_value(Archivo,Texto):
var File,Txt,TxtVer,Ok;
Txt=noone;
Ok=0;

if file_exists(argument0)
{
File = file_text_open_read(argument0);
 
while(!file_text_eof(File))
{
  TxtVer=file_text_read_string(File);
  if Ok=1 {Txt=TxtVer;}
  if TxtVer==string(argument1) {Ok=1;} 
  file_text_readln(File);
}
 
file_text_close(File);
}

return(Txt);


Fijate.. no lo probe.. pero tendria que funsionar como queres.

Me explico un poco mejor: Busca una palabra que este contenida en un renglon de un archivo, luego devuelve el resultado del proximo renglon. En caso que no lo encuentre o no exista un valor devuelve noone
El resultado es un string (texto) si lo necesita pasar a numero usa el asi :

real( Texto );

o asi:

real(string_digits( Texto ));
Título: Re:Buscar texto en un archivo *.txt
Publicado por: Mr.Dudas en Junio 03, 2013, 11:19:54 PM
Cita de: romon_28 en Junio 03, 2013, 06:17:39 PM
scr_get_value(Archivo,Texto):
var File,Txt,TxtVer,Ok;
Txt=noone;
Ok=0;

if file_exists(argument0)
{
File = file_text_open_read(argument0);
 
while(!file_text_eof(File))
{
  TxtVer=file_text_read_string(File);
  if Ok=1 {Txt=TxtVer;}
  if TxtVer==string(argument1) {Ok=1;} 
  file_text_readln(File);
}
 
file_text_close(File);
}

return(Txt);


Fijate.. no lo probe.. pero tendria que funsionar como queres.

Me explico un poco mejor: Busca una palabra que este contenida en un renglon de un archivo, luego devuelve el resultado del proximo renglon. En caso que no lo encuentre o no exista un valor devuelve noone
El resultado es un string (texto) si lo necesita pasar a numero usa el asi :

real( Texto );

o asi:

real(string_digits( Texto ));
Bueno lo probe y cada vez me da -4  :( . Y por otra parte creo que como me recomandaron DEADOFALL Y brunoxzx deberia utilizar una .ini, bueno voy a buscar algun ejemplo a ver si encuentro alguno.
Título: Re:Buscar texto en un archivo *.txt
Publicado por: DEADOFALL en Junio 06, 2013, 04:41:32 AM
Te ahorro el trabajo amigo, te adjunto un ejemplo mío. Si algo no entiendes (no lo creo) pregunta, aunque segun yo le dejé bien explicado, pero tengo mis dudas, lo hice corriendo en 5 min justo ahora. ¡Suerte! :-[
Título: Re:Buscar texto en un archivo *.txt
Publicado por: Mr.Dudas en Junio 07, 2013, 01:18:34 AM
Cita de: DEADOFALL en Junio 06, 2013, 04:41:32 AM
Te ahorro el trabajo amigo, te adjunto un ejemplo mío. Si algo no entiendes (no lo creo) pregunta, aunque segun yo le dejé bien explicado, pero tengo mis dudas, lo hice corriendo en 5 min justo ahora. ¡Suerte! :-[
Gracias por ejemplo DEADOFALL es mas o menos lo que iba buscando pero después de modificarle unas cositas el ejemplo me sirvió perfectamente como lo necesitaba.
GRACIAS A TODOS POR VUESTRAS IDEAS/RESPUESTAS