Problemas Con "Manejo De Ficheros"


Objetivo: Problemas Con "Manejo De Ficheros"
Al probar este codigo de prueba para aprender a usar los ficheros segun voy leyendo el libro gambas, me salen errores, y ya no se si es que no se escribir o no se...
Uso gambas 2
Este es el codigo en cuestion:

PUBLIC SUB Main()
DIM archivo AS File
DIM archivo2 AS File
DIM out AS String
archivo = OPEN "/home/ans/Escritorio/prueba" FOR READ WRITE CREATE
archivo2 = OPEN "/home/ans/Escritorio/prueba2" FOR READ WRITE CREATE
INPUT #archivo2, out
PRINT out
END


Si pongo INPUT o LINE INPUT, el error que sale es System Error:ioctl inapropiado para el dispositivo y ademas, me borra lo que tenia escrito en ellos, y si en cambio, pongo READ, me sale End of File, pero no me los borra.

Los dos archivos estan en su ruta correcta, y ambos tienen algo escrito.

Segun lo que he leido, deberia de abrir ambos archivos para leerlos, escribirlos y crearlos si no existiesen, y luego leer que es lo que tienen escritos, y ponerlo como argumento en la variable "out" que despues saldria en consola.

¿Podriais indicarme algun lugar donde pueda aprender a usar los ficheros o explicarmelo brevemente?

Graciaas!!

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Hola.

Puedes ver la wiki del comando open en este link:

http://gambasdoc.org/help/lang/open?es

Saludos

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Lo he leido como 100 veces ese, el F1 tambien y en algun otro sitio, como por ejemplo algun ejemplo que pusieron ayer en el que se manejaban ficheros y ademas he vuelto a hacer pruebas a ver si lo cojo, pero es que no me entero de como funcionan los ficheros ni de para que sirve cada cosa o en que momento se usa....eso puede ser tambien porque no entiendo el significado de algunas palabras como "buffer" o "flujo"...

Esta noche seguire intentandolo, ahora tengo que estudiar....

Saludos y muchas graciaas!!

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Nunca he usado el INPUT a secas sobre un fichero de texto. En lugar de INPUT a secas, prueba con LINE INPUT, que funciona de maravilla.
Si usas INPUT solo, tienes que utilizar también la función Val para ubicar lo leído en cadenas (según la ayuda, pero yo nunca lo he usado, repito).

Suerte.

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Leyendo este codigo, intuyo que no estoy escribiendo mal...
http://foro.gambas-es.org/viewtopic.php?f=1&t=702&p=3909#p3909
Y ya no se que haceeer....intentarlo hasta que salga...jajaajajaaj

Alguien me podria explicar como funciona? Me refiero a por ejemplo, si tu pones LINE INPUT, coge la primera linea, la lee y la guarda en la variable que declares, si lo pones dos veces, coge la segunda linea etc...o como sea. Es que no entiendo tampoco la logica de esa parte.
Si podeis explicarmelo como si fuera un ejemplo grafico, como si me tuviese que imaginar que hay un fichero de verdad, y el raton pasa al principio y blabla, lo que sea...

Muchas graciaaassss!!

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
No sé exactamente qué quieres hacer. En abstracto no es posible rellenar tu imaginación, digo.
Sube el proyecto que estás haciendo, al menos sube el código y una descripción de los formularios y tendremos algo sobre lo que trabajar.

Suerte

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Realmente no quiero hacer nada, no tengo un codigo concreto sobre el que este trabajando, simplemente estoy leyendo el libro, y segun voy avanzando, estoy en otro escritorio con el gambas abierto, y todos los codigos que van poniendo en el libro como ejemplo, los voy usando, y despues, para comprobar si lo he entendido bien o si no pone el ejemplo de algun codigo, funcion o lo que sea, pues yo voy haciendome ejemplos simples, para comprobar que funciona o que no funciona y demas, para cuando despues quiera hacerme un proyecto bien hecho, saber como se hacen las cosas.

Y he llegado a la parte del manejo de ficheros, y ahi, los ejemplos que me pongo siguiendo el libro, no me funcionan, y me gustaria saber porque no me funcionan, como haceis para que lean ficheros, como trabaja gambas con los ficheros...y todo eso.

He leido documentacion y demas, y en todas pone lo mismo, como se declaran y demas, pero no explica COMO funciona en si gambas con los ficheros.

el codigo ejemplo que estaba usando es el que esta al principio:

PUBLIC SUB Main()
DIM archivo AS File
DIM archivo2 AS File
DIM out AS String
archivo = OPEN "/home/ans/Escritorio/prueba" FOR READ WRITE CREATE
archivo2 = OPEN "/home/ans/Escritorio/prueba2" FOR READ WRITE CREATE
INPUT #archivo2, out
PRINT out
END


Añado: Es un ejemplo de consola, sin formularios, y ambos archivos existen y estan en su sitio

última edición por AnSnarkista el Jueves, 17 Junio 2010, 12:02; editado 1 vez
Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Lee este post, a ver si te ayuda:

http://foro.gambas-es.org/viewtopic...manejo+ficheros


Por otra parte, creo que el problema que tienes es que estás abriendo un fichero para "leer", "escribir" y "crear", por lo tanto cada vez que lo haces se vuelve a crear el fichero nuevo sin contenido. No deberías usar CREATE en los siguientes accesos al fichero para no borrar su contenido.

Lo que yo haría es verificar primero si el fichero existe y si no existe entonces lo creo (con create).
En caso contrario, si ya existe, puedo abrirlo para leer o para escribir o ambas cosas, incluso para añadir líneas (con APPEND).

Un fichero no es más que un stream, por lo tanto para escribir en un fichero sólo tienes que "imprimir" dentro de él, con la instrucción PRINT. Para leer, puedes hacerlo linea por linea o bien todo entero hasta Eof (End Of File).

Creo que con esta información y la lectura del post indicado (y del libro, donde parece estar bien claro) deberías ser capaz de crear, leer y escribir ficheros de texto sin problemas.

Saludos

Perfil MP  
Objetivo: Re: Problemas Con "Manejo De Ficheros"
Gracias por el post (no se como no lo habia encontrado antes), lo he marcado para poderlo encontrar despues.

En cuanto a lo de CREATE, segun el libro, te crea el archivo si no existe, y no pone nada de que te borre las cosas.

Me estoy fijando ahora, y me parece que el problema va a estar en que unos se usan para leer y escribir en binario, y los otros no...

A ver si voy a estar mezclando entre tipos y no me he dado cuenta...De todas formas, seguire tu consejo, me leere el post y seguire practicando hasta que salga.

Saludos y gracias de nuevo!!

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.2905s (PHP: -47% SQL: 147%)
Consultas SQL: 24 - Debug off - GZIP Activado