Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Guardar y Cargar Archivos
Guardar y Cargar Archivos
Manipulacin de archivos
Necesidades
Guardar en archivos datos del espacio de trabajo. Recuperar datos guardados previamente.
02/11/2008
Guardar datos
Copiar (al portapapeles) desde la Ventana de Comandos de Matlab y pegar en un archivo de texto. Guardar datos en un archivo binario o ASCII usando la funcin save. Guardar planillas de clculo, datos cientficos, imgenes o audio con funciones que vienen con las herramientas de Matlab. Guardar datos en un archivo utilizando las operaciones de Entrada/Salida que proporciona Matlab (fwrite, fprintf, etc.).
02/11/2008
Recuperar datos
Ingresar (manualmente) o pegar datos en la Ventana de Comandos. Crear un script para inicializar matrices u otras estructuras de datos. Cargar archivos binarios o ASCII utilizando load. Cargar planillas de clculo, datos cientficos, imgenes o audio con funciones que vienen con las herramientas de Matlab. Cargar datos desde un archivo utilizando las operaciones de Entrada/Salida que proporciona Matlab (fread, fscanf, etc.).
02/11/2008
02/11/2008
02/11/2008
Ejemplo 2
p = 35; q = ones(20); save arch.mat p q
Ejemplo 3
M = [1 2 3; 4 5 6; 7 8 9]; save arch.dat M -ascii -double
Ejemplo 4
save('d:\pub\arch.dat','p','q','-ASCII')
02/11/2008
Formatos de archivo
Binario
Los datos (numricos o alfabticos) se guardan en representacin binaria. Los datos numricos se convierten a punto flotante de mxima precisin y se pasan a binario. Puede guardarse y recuperarse ms de una variable.
ASCII
Los datos (solo nmeros) se guardan en representacin ASCII. Los nmeros se guardan como texto. La precisin por defecto es simple, pero se pueden guardar nmeros de doble precisin. Por ejemplo, el nmero 27 se guarda como el texto "2.7000000e+001" (ocupa 14 bytes) en precisin simple y "2.7000000000000000e+001" (ocupa 23 bytes) en precisin doble. Puede guardarse una nica variable. Las columnas se separan por espacios o tabuladores.
02/11/2008 Computacin 1, 2008 - Facultad de Ingeniera 8
Formatos de archivo
Ejemplo de un archivo en formato ASCII
M = [1 2 3; 4 5 6; 7 8 9]; save arch.dat M -ascii -single -tabs
Archivo arch.dat:
1.0000000e+000 4.0000000e+000 7.0000000e+000 2.0000000e+000 5.0000000e+000 8.0000000e+000 3.0000000e+000 6.0000000e+000 9.0000000e+000
02/11/2008
02/11/2008
10
02/11/2008
11
Ejemplo 2
load -ascii arch.dat
Ejemplo 3
p = load('-ASCII','d:\pub\arch.dat')
02/11/2008
12
02/11/2008
13
Archivo arch.dat:
1|2|3 4|5|6 7|8|9
02/11/2008
14
02/11/2008
16
fprintf fclose
fclose
02/11/2008
17
02/11/2008
18
02/11/2008
19
02/11/2008
20
Descripcin:
Da formato a los datos de la matriz A (y todas las que se especifiquen) y escribe en el archivo. Retorna la cantidad de bytes que se escribieron.
02/11/2008
21
Caracteres de conversin
Se utilizan para controlar la notacin, alineacin, dgitos significativos, ancho del campo y otros aspectos de un valor escalar o una matriz. Comienzan siempre con %.
Caracteres de escape
Se utilizan para representar teclas de control del teclado. Ejemplos de teclas de control: enter, tab, esc, etc. Comienzan siempre con \.
02/11/2008 Computacin 1, 2008 - Facultad de Ingeniera 22
Si se aplica el formato
'%6.2f' '%6.2f %6.0f' '%4.0f %4.2f %4.0f\n'
6 6 -1 0
s p
02/11/2008
Descripcin Retroceso (borrar) Nueva lnea (enter) Tabulador horizontal (tab) Barra (\) Porcentaje (%)
Computacin 1, 2008 - Facultad de Ingeniera 24
02/11/2008
02/11/2008
25
Lee como mximo n nmeros, caracteres o strings. Lee hasta el final del archivo. Lee como mximo m*n nmeros, caracteres o strings. Llena una matriz con m filas como mximo. El valor de n puede ser inf, pero no as el valor de m.
02/11/2008
26
Descripcin Secuencia de caracteres. El nmero est especificado por el ancho del campo (ej.: '%10c' lee 10 caracteres) Enteros en base decimal Nmeros de punto flotante Palabras (series de caracteres juntos hasta llegar al espacio en blanco)
%d %f %s
02/11/2008
27
Descripcin:
Cierra el archivo y retorna 0 si no han ocurrido errores y -1 en caso contrario.
02/11/2008
28
02/11/2008
29
02/11/2008
30
02/11/2008
31
02/11/2008
32
Resumen
Guardar datos
Funcin Para guardar Delimitadores Notas Coma Cualquiera Cualquiera Para utilizar con planillas de clculo (tipo Excel). Fcil de usar, flexible. Parte de las rutinas de E/S. Es la ms flexible, pero tambin la ms difcil de usar. Fcil de usar.
csvwrite Datos numricos dlmwrite Datos numricos fprintf Datos numricos y alfabticos
save
Datos numricos
Tabs o espacios
02/11/2008
33
Resumen
Cargar datos
Funcin csvread dlmread fscanf Para cargar Datos numricos Datos numricos Datos numricos y alfabticos Delimitadores Notas Coma Cualquiera Cualquiera Para utilizar con planillas de clculo (tipo Excel). Fcil de usar, flexible. Parte de las rutinas de E/S. Es la ms flexible, pero tambin la ms difcil de usar. Fcil de usar.
load
Datos numricos
Tabs o espacios
02/11/2008
34
Preguntas
Para qu puede servir guardar variables en un archivo en formato binario? Y guardarlo en formato ASCII? Qu ocurre si intento cargar un archivo ASCII donde se guard ms de una variable? Cmo hago para pasar datos de una planilla de clculo a una variable del entorno de trabajo? Cundo puede resultar necesario utilizar Entrada y Salida de bajo nivel?
02/11/2008
35