Ver Mensaje Individual
  #1
Antiguo 10 de febrero de 2023, 09:04
dariodr
Forero
Última Actividad 03.10.2026 03:50
Posts Posts: 57
Likes enviados Enviados: 17
Likes recibidos Recibidos: 11
Predeterminado Leer archivos COBOL
0 Inactivo Inactivo

Hola, amigos coboleros otra vez yo (jeje). Tengo estos dos codigos uno es para crear un archivo y el otro es para leerlo, el problema esta que a la hora de leerlo lo hace en forma desordenada, donde esta mi error.
Saludos.

Codigo para crear el archivo.
Código COBOL:
  1.        identification division.
  2.        program-id. agenda.
  3.      *
  4.        environment division.
  5.        input-output section.
  6.        file-control.
  7.            select agenda assign to "agenda.txt".
  8.  
  9.       *
  10.        data division.
  11.        file section.
  12.        fd  agenda
  13.            recording mode f.
  14.        01  persona.
  15.            03 nombre     pic x(10).
  16.            03 edad       pic 99.
  17.            03 direccion  pic x(25).
  18.            03 telefono   pic 9(7).
  19.        working-storage section.
  20.        01  i    pic 99.
  21.      *
  22.        procedure division.
  23.        proceso.
  24.      *------ abrir archivo para escritura -----
  25.            open output agenda.
  26.  
  27.       *---- ingreso de datos ------
  28.            perform varying i from 1 by 1 until i > 3
  29.                display "Datos de la persona Nro " i ": "
  30.                perform leer-datos
  31.                write persona
  32.            end-perform.
  33.            close agenda.
  34.            stop run.
  35.  
  36.        leer-datos.
  37.            display "Nombre: " no advancing.
  38.            accept nombre.
  39.            display "Edad: " no advancing.
  40.            accept edad.
  41.            display "Direccion: " no advancing.
  42.            accept direccion.
  43.            display "Telefono: " no advancing.
  44.            accept telefono.

Codigo para leer el archivo.
Código COBOL:
  1.        identification division.
  2.        program-id. agendalee.
  3.  
  4.        environment division.
  5.        input-output section.
  6.        file-control.
  7.            select agenda assign to "agenda.txt"
  8.                organization is line sequential.
  9.  
  10.        data division.
  11.        file section.
  12.        fd  agenda.
  13.        01  persona.
  14.            05 nombre       pic x(20).
  15.            05 edad         pic 99.
  16.            05 direccion    pic x(30).
  17.            05 telefono     pic x(12).
  18.        working-storage section.
  19.        01  fin-archivo     pic a value "N".
  20.  
  21.        procedure division.
  22.        proceso.
  23.            open input agenda.
  24.            perform until fin-archivo = "S"
  25.                read agenda
  26.                    at end move "S" to fin-archivo
  27.                    not at end perform lista-personas
  28.                end-read
  29.            end-perform.
  30.            close agenda.
  31.            stop run.
  32.  
  33.        lista-personas.
  34.            display 'Nombre: ' nombre.
  35.            display 'Edad: ' edad.
  36.            display 'Direccion: ' direccion.
  37.            display 'Telefono: ' telefono.
Imágenes Adjuntas
 
dariodr is offline   Responder Con Cita