• Sábado 18 de Mayo de 2024, 20:20

Autor Tema:  Re: Nuevo en el foro y duda sobre C  (Leído 1198 veces)

ivanfdez

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
    • http://www.eltruebano.com
Re: Nuevo en el foro y duda sobre C
« en: Viernes 2 de Mayo de 2003, 13:28 »
0
Hola,

recientemente he visitado por primera vez vuestro foro, y la verdad es que ya lo considero imprescindible. Hoy me he registrado ya como usuario y me tendréis por aquí a menudo.

    EL motivo de visitar este foro es que estoy buscando solucion en C para un problema: necesito leer y extraer todas las palabras de un archivo de texto.

   He estado buscando pero no veo la manera. Tendria que leerlas de un archivo de texto plano en el que las palabras unicamente estarian separadas entre si por un espacio.

    Agradecería opiniones e ideas.

    Un saludo a tod@s,
Iván.:guitar:

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Nuevo en el foro y duda sobre C
« Respuesta #1 en: Viernes 2 de Mayo de 2003, 15:15 »
0
Bueno, en efecto esa es una manera, que las palabras esten separadas por espacio, aunque tambien podria ser cualquioer otro caracter, una coma o un ; en fin..

El programa no es  muy complicado, intenta hacerlo y con gusto resolvere tus inquietudes, revisa las fuciones para menajr archivos, preferiblemente las de alto nivel, como por ejemplo fopen, fseek,fread,fwrite que te trabajan con apuntadores, y en mi punto de vista son mas completas, sin embargo tambien puedes utilizar las de medio nivel,  open, read , write, seek, estas funciones utilizan handlers..es decir utilizan numero identificadores de archivo.

JuanK
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

ivanfdez

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
    • http://www.eltruebano.com
Re: Nuevo en el foro y duda sobre C
« Respuesta #2 en: Viernes 2 de Mayo de 2003, 15:59 »
0
Gracias por tu respuesta juank. Te cuento:

para ese mismo programa tengo ya funciones que me leen y escriben estructuras en un archivo binario utilizando fread() y fwrite(). En estas funciones, el mismo tipo de estructuras que escribo es el que voy a leer, por eso no tengo problemas.

El problema (para mi) es el leer diferentes palabras de un documento de texto cuando esas palabras tienen todas un tamaño distinto y no hay un retorno de carro entre ellas.

¿Existe en C la posibilidad de ir leyendo caracter y caracter hasta encontrar un caracter determinado (en este caso un espacio, pero podría ser un punto y coma o cualq otro caracter)?

En ese caso trataría de hacerlo de esa manera, pero quiero saber si eso es posible o no para ponerme con ello.

Gracias y un saludo,
Iván.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Nuevo en el foro y duda sobre C
« Respuesta #3 en: Viernes 2 de Mayo de 2003, 16:08 »
0
La posibilidad existe , pero no esta hecha la funcion, jejeje
osea que tienes que hacerla tu, hay dos opciones, una de ellas es que vayas leyendo del disco caracter por caracter hasta encontrar la coma..este es el modo lento.
El modo rapido es que leas el archivo en arrays grandes, o si es pequeño cargarlo completamente, y una vez en memoria recorres todo el array y vas sacando cada palabra a medida que encuentres las comas, es más facil y más rapido no?

si tienes dudas de como hacerlo me cuentas please.

Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

ivanfdez

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
    • http://www.eltruebano.com
Nuevo en el foro y duda sobre C
« Respuesta #4 en: Viernes 2 de Mayo de 2003, 16:21 »
0
Gracias de nuevo juank,

me pondré a ello.
Postearé las dudas según me vayan surgiendo con esta función.

De nuevo: gracias.
Iván.