Bueno, pues me he decidido a hacer este tutorial debido a las dudas de ayer que conseguí solucionar gracias a Rober y markef. Entonces, me dije: ¿Qué tal si hago un tutorial para los que tenían dudas como yo?. Bueno aquí está.
¿Qué es el módulo IO?
El módulo IO permite manejar archivos de texto a tu placer. Es un módulo bastante interesante, pero que últimamente ha caído debido a la preferencia de manejar archivos INI con el módulo INI.
¿Funciona para LuaDev?
Sí. Pero lo mejor es que también funciona para el resto, como LuaHM7, HMv2, Lua normal, etc. Esto es debido a que el módulo casi no ha variado en cada tipo de Lua (Creo que en Phoenix Game Engine no funciona, pero corríganme).
Entonces, ¿cómo se lee un archivo con este módulo?
Para abrir archivos vamos a utilizar hasta 3 funciones, que son:
La primera y la tercera son obligatorias para todo: leer, escribir, etc
Se haría así:
TXT = io.open("Tutorial.txt") Tutorial = TXT:read() TXT:close() blanco = color.new(255,255,255) while (1) do screen.print(1,10,Tutorial,blanco) screen.flip() end
Cómo hemos visto hay que seguir tres pasos: Abrir, leer y cerrar. Fácil, ¿no?
Una característica también interesante de io.read es que podemos poner el número de caracteres que queremos que lea, así:
TXT = io.open("Tutorial.txt") TXT:read(4) TXT:close()
Así sólo leería 4 caracteres del archivo.
Vale, ya lo he entendido. ¿Y escribir?
Pues casi igual de fácil, sólo que sería abrir, escribir, guardar y cerrar. Algo así:
TXT = io.open("Tutorial.txt","w") ---La w, es para ponerte en modo escritura, sino pones nada es modo lectura. TXT:write("Hola, esta cosa de m.rr funciona") TXT:flush() --Función de guardar TXT:close()
Pues hasta aquí está lo básico, leer y escribir. Espero no ver ningún post preguntando por este módulo ;)
Cualquier duda, aquí estoy.
¿Cómo puedo saber más?
Puedes visitar las siguientes páginas:
http://pipagerardo.fortunecity.es/Tutorial_LUA_PSP_pipagerar...
o también
Lua 5.1, el link de Nekerafa
Ey mrr deberiasa completar el
Ey mrr deberias completar el tuto, como ya sabes hay mas funciones sobre este modulo y muchos de nosotros nos gustaria manejar el modulo IO ,ademas seria un aporte grandioso,Saludos amigos...
pipagerardo
Te recomiendo que te pases por el tutorial de LUA de pipagerardo en el que explica TODO sobre el módulo IO ;)
Pero el link que mrr dió me
Pero el link que mrr dió me manda a otro lado.
Google
Google...
como se supone que entre
como se supone que entre aqui?
http://www.dotster.com/dotster/sites/fortune-city.bml
Pues eso...
https://www.google.es/#hl=es&output=search&sclient=psy-ab&q=tutorial+lua+pipagerardo&oq=tutorial+lua+pipagerardo&aq=f&aqi=g-sK1&aql=&gs_l=hp.3..0i10i30.683.5169.0.5498.24.20.0.4.4.0.231.3514.0j16j4.20.0...0.0.y_pAE8rimgk&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.,cf.osb&fp=dbfabe1817fd7705&biw=1218&bih=712
Saludos.
PD: hay algún tipo de problema con el host....
Me suena que dejó de pagar el
Me suena que dejó de pagar el host y se lo cerraron o algo así, aunque no me hagas mucho caso xD, y la única forma era con la cache creo que era de Google y de la página web.
Saludos, Tooxico xD
Ok,pero ya qur no tenemos
Ok,pero ya que no tenemos dichos tutos deberias hacerlos tu (claro,si quieres.xD), a mi me caeria de pelos un tuto de eso.
PD:Deberias darte una vuelta por msn,saludos.
Okk, lo continuaré. Ya lo voy
Okk, lo continuaré. Ya lo voy ampliando.
P.D: Si la vuellta la doy xD pero no encuentro a nadie
Tengo la solución!
Resulta que antes, cuando programaba en HM, para evitar tener que estar cada dos por tres con el navegador, lo que hice fue copiar el tutorial en un archivo de texto, así, cuando estaba fuera de casa podría seguir programando.
Si queréis, abro un tema nuevo con todo el tutorial de pipagerardo, aunque ahora que me acuerdo... creo que Lua HM 7 venia con el tutorial...
NekeOS, el nuevo shell para PSP
PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.
Sony Xperia Z1 Compact con Android 5.1.1
Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).
Seria bueno ;)
Seria bueno ;)
Pero al escribir se borraria
Pero al escribir se borraria lo que ya tenia ese TXT verdad? como lo evito por ejemplo que aparesca al lado o abajo de el texto?
"Bye" que contiene "xD xD xD xD" y que al hacer el code de arriba no se borre y escriba esto "Hola Scene",sino que haga esto "xD xD xD Hola Scene". Saludos
Para preservar los datos, no
Para preservar los datos, no abras el archivo con "w", ábrelo con "r+" o "a+" y listo, no perderás nada ("r+" te deja el puntero al inicio del archivo, es decir, lo que escribas quedará antes que el contenido original del archivo. "a+" deja el puntero al final).
Ok,gracias rober ;) por
Ok,gracias rober ;) por cierto por ahi habia un tuto donde decia todo estode W,A,R pero se me ah perdido.. Saludos
Si, en la documentación de
Si, en la documentación de Lua o en la oficial de LuaDEV.
...
¿Donde has definido la función "llamar()"?
Dovemac
Andres usa llamar() en ves de poner broke(), tiene esa costumbre xD
Saludos
Jejejejejjejejej zeee ;)
Jejejejejjejejej zeee ;)
Solo es para provocar error y
Solo es para provocar error y no tener que salir y darle conexion usb ;)
Pero ...
como se lee una linea concreta?¿
TXT
Cada read() es una línea.
TXT = io.open("TEXTO.TXT","r")
Línea1 = TXT:read()
Linea2 = TXT:read()
Saludos
Entonces
Entonces hay que usarlo en un bucle for ¿no?
Funcionaría?
TXT =
En teoría sí pero creo que fallaría por que hay que poner pparéntesis a lines y read
Huy...
No conte con lo parentesis...
Una cosa, ¿que tendría de diferente el codigo de arriba con este?
muchas gracias
pues eso
Gracias mrr me sirvio de
Gracias mrr me sirvio de mucho al principio editaba sin queres el txt pero luego ya lo domine..xD Gracias compañero y pasate por el msn. ;)
No me ah quedado claro lo de
No me ah quedado claro lo de escribir ,podrias prfavor ponernos un ejemplo?(para escribir),gracias mrr
esta chiido el tuto..xD
Anda, andrés!! Hace un montón
Anda, andrés!! Hace un montón que no te encuentro ehh xD
Toma:
Mmm...
Ahora que me acuerdo, no se si os acordareis de los tutoriales de Elender, pero aí explica todo esto y más (Es donde aprendí a utilizar los archovos XD):
http://psp.scenebeta.com/tutorial/8-lectura-y-escritura-de-f...
Un saludo ^-^.
NekeOS, el nuevo shell para PSP
PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.
Sony Xperia Z1 Compact con Android 5.1.1
Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).
Muchas gracias
Muchas gracias estaba buscando esto desde hace tiempo, ahora me queda aprender como leer todas las lineas ;)
Un Saludo!
Fácil
Depende lo que quieras lograr, pero personalmente prefiero la 2da forma cuando se trata de editar el contenido del archivo para después escribirlo de nuevo.
Entonces quedaria
Entonces quedaria así ¿?
Un Saludo!
Creo que esto tambien funcionaría
Prueba con esto, creo que tambien funciona:
Saludos!
No,da error en la linea 7.
No,da error en la linea 7.
Ya me di cuenta del error
Ya me di cuenta del error, creo que esta solucionado
Una cosa ¿Que error te daba?
Saludos!
Si, asi es
Si, asi es
Pues
Pues genial lee todas las lineas pero ahora me gustaria saber como hacer que la linea no se salga de la pantalla, hace tiempo vi como hacerlo pero no me acuerdo donde lo vi
Con string.len()
Con string.len()
Tengo preguntas...
Que es lo que contendría el archivo txt en su interior y que se podría leer/escribir en él??
Puedes escribir lo que
Puedes escribir lo que quieras y leer lo que quieras ;)
En mi opinión es mejor el .txt que los .ini
Saludos
By Aitor
En teoria podrias guardar un texto cualquiera, por ejemplo la letra de una cancion o usarlo como si se tratara de un ini...
¡Gracias!
No había usado este modulo antes porque no tenía ni idea de usarlo, pero ahora que lo comprendo creo que trastearé esto para varias cosas que tengo en mente...
Buen tutorial.
Un saludo.
De nada, espero que te sirva
De nada, espero que te sirva para iThunder ;)
By Aitor
Gracias por el tuto m.rr me viene de perlas ;)
De nada ;)
De nada ;)
En mi opinión, el mejor modo
En mi opinión, el mejor modo de aprender a usar las funciones del módulo "io" es leyendo toda la información que aparece sobre este en el tutorial de lua escrito por pipagerardo y que podeís encontrar facilmente en Google. Además de ser el tutorial sobre Lua más interesante que he encontrado en la web.
Mmm...
Funciones básicas: http://www.lua.org/manual/5.1/es/
Módulo io: http://www.lua.org/manual/5.1/es/manual.html#pdf-io.close
Gracias Nekerafa :)
Gracias Nekerafa :)
A ver...
Ese es el manual oficial de Lua, el cual siempre lo visito cuando tengo dudas.
Tengo que decir que pipagerardo se basó en el en las funciones básicas, ya que las explican igual.
NekeOS, el nuevo shell para PSP
PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.
Sony Xperia Z1 Compact con Android 5.1.1
Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).
Como te dicen más abajo hay
Como te dicen más abajo hay más funciones aparte de leer y escribir. No estaría de más que hicieras un tutorial más documentado y y profundo.
Saludos m.rr.