Tras el pedido reiterado de los alumnos, se explica a continuación: 1. Cómo leer y escribir archivos de texto desde Pascal 2. Cómo pegar los datos de un archivo txt a Excel 1) Comandos para leer desde y escribir en archivos de texto en Pascal 1a) En primer lugar, es necesario indicar al programa en qué archivo están los datos que pretendemos leer, y a qué otro archivo debe escribir los datos de salida. Para esto, debemos asignar la ruta del archivo (por ejemplo 'c:\trabajo\input01.txt') a una variable de texto (llamada, por ejemplo, Input). Esto se hace mediante el comando assign: assign (<variable de texto>,<ruta del archivo>) donde: <variable de texto> es una variable que debemos haber inicializado previamente en la parte declarativa con formato texto, por ejemplo: var Input: text; <ruta del archivo> es la ubicación del archivo en nuestro disco rígido, encerrada entre comillas simples. Debemos notar que el archivo que leeremos debe existir y debe contener los datos que vamos a leer, pero el archivo de salida no tiene por qué existir: Pascal lo creará o lo sobreescribirá si ya existía. 1b) A continuación, debemos preparar los archivos para la lectura o la escritura. Si pretendemos leer información desde un archivo, utilizaremos el comando reset, de la siguiente manera: reset (<variable de texto entrada>); Si pretendemos escribir en un archivo de salida, usaremos el comando rewrite: rewrite (<variable de texto salida>); Esta nueva variable de texto no debe ser igual a la inicializada mediante reset. De un mismo archivo, o se lee, o se escribe. 1c) Para leer desde un archivo de texto, utilizaremos el comando read como sigue: read (<variable de texto entrada>, <valor 1>, <valor 2>, ..., <valor n>); donde: <variable de texto entrada> es la variable de texto que nos indica el archivo al que vamos a acceder <valor 1>, <valor 2>, ..., <valor n> son las variables que leeremos desde el archivo de entrada, las cuales deben haber sido declaradas previamente. Para escribir a otro archivo de texto, usaremos write o writeln. El primer comando nos escribirá las variables sin saltar de línea, mientras que el segundo insertará un salto de línea al finalizar de escribir las variables: writeln (<variable de texto salida>, <valor 1>, <valor 2>, ..., <valor n>); 1d) Finalmente, debemos cerrar los archivos utilizados para liberar memoria. Esto se hace mediante el comando close: close (<variable de texto>); 1e) Ejemplo: (* Inicializacion de los archivos de texto *) assign (Input, 'c:\trabajo\input01.txt'); assign (Output, 'c:\trabajo\output01.txt'); reset (Input); rewrite (Output); (* Lectura desde input01.txt *) read (Input, NDat, FreqHOut, NIni, NFin); for i:= 1 to NDat do read (Input, Tinp[i], Finp[i]); (* Escritura a output01.txt *) writeln (Output, k:6, Tout:12:5, Fout:12:5); close (Input); close (Output); 2) Cómo pegar información desde un archivo de texto a Excel Abrimos el archivo de texto, seleccionamos todo su contenido (digamos, n filas y m columnas) y lo copiamos. Abrimos el Excel, nos posicionamos en alguna celda, y pegamos el contenido. Esto provocará que la información copiada del archivo de texto se pegue en n filas pero sólo una columna. Para indicar al Excel que distribuya el contenido en m columnas, tenemos dos opciones. a) Ni bien pegamos el contenido, abajo a la derecha de la columna única donde se ha pegado la información, puede aparecer un ícono con opciones de pegado. Debemos seleccionar: -Usar el asistente para importar texto Luego, debemos optar por: -Delimitados: si la información en el txt está separada por comas, tabulaciones o algo así. -De ancho fijo: si la información en el txt está alineada en columnas (recomendable). Luego, el Excel nos propone la subdivisión a realizar. Suele estar bien. Salteamos el elección de formato y le damos a finalizar. b) Si no ha aparecido el ícono con opciones de pegado, existe un menú que tiene la misma funcionalidad y se encuentra en: Datos - Texto en columnas Repetir todo lo mencionado en a). Bien, creo que con eso alcanza para aclarar sus inquietudes. Guillermo Poltarak