09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

14.2. Manejo de archivos <strong>en</strong> <strong>Pascal</strong> 291<br />

Reset(nombreArchivo)<br />

nombreArchivo^<br />

comp comp comp . . .<br />

1 2 3<br />

compn<br />

comp<br />

1<br />

EoF(nombreArchivo) = false<br />

Figura 14.6.<br />

Write(archivoTarjetas, unaTarjeta);<br />

Fin de<br />

archivo<br />

Dado que <strong>Pascal</strong> trabaja con archivos secu<strong>en</strong>ciales, el cursor está siempre<br />

situado al final del archivo cuando se va a realizar una operación de escritura.<br />

Las sucesivas compon<strong>en</strong>tes se van añadi<strong>en</strong>do por el final del archivo, desplazando<br />

la marca de fin de archivo.<br />

Una vez que hemos creado un archivo, es importante poder leer sus compon<strong>en</strong>tes.<br />

Dado que el acceso se hace de forma secu<strong>en</strong>cial, hay que situar, nuevam<strong>en</strong>te,<br />

el cursor al principio del archivo. Para ello, se ejecutará la instrucción:<br />

Reset(nombreArchivo)<br />

Con esta instrucción también se coloca el cursor <strong>en</strong> la primera compon<strong>en</strong>te<br />

del archivo. Si el archivo no está vacío, su primera compon<strong>en</strong>te está disponible<br />

<strong>en</strong> la variable nombreArchivo^, como puede comprobarse <strong>en</strong> la figura 14.6.<br />

❡❡ Obsérvese que las funciones Rewrite y Reset son muy parecidas, ya que<br />

ambas sitúan el cursor al principio del archivo. La difer<strong>en</strong>cia exist<strong>en</strong>te <strong>en</strong>tre<br />

ambas es que la primera prepara el archivo exclusivam<strong>en</strong>te para escritura<br />

(destruy<strong>en</strong>do la información exist<strong>en</strong>te), mi<strong>en</strong>tras que la segunda lo prepara<br />

exclusivam<strong>en</strong>te para lectura.<br />

Una vez que el cursor apunte a la primera compon<strong>en</strong>te, se puede mover el<br />

cursor a la sigui<strong>en</strong>te posición y copiar la información de la sigui<strong>en</strong>te compon<strong>en</strong>te<br />

de nombreArchivo utilizando la instrucción

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!