• Sábado 18 de Abril de 2026, 22:11

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - fernandezlm

Páginas: [1]
1
Matlab / Re: ASCII, texto etc..
« en: Miércoles 18 de Febrero de 2009, 12:07 »
BUenas!

Sobre la 1) Te comento que yo utilizo el textscan siempre que deseo trabajar con los datos. El textread lo uso cuando únicamente los leo y no los quiero manipular. El fscanf nunca lo he utilizado luego que tengo un rato te miro que sale de resultado, pero como en todo si te vale pues adelante.

2) Pues es qe ypo no creo los directorios de forma computacional, sino manualmente. Ásí que no te puedo ser de ayuda.

UN saludo, y luego te hablo del fscanf

Mercedes

2
Matlab / Re: ASCII, texto etc..
« en: Martes 17 de Febrero de 2009, 22:28 »
Buenas chica!

Esta mañana estuve a punto de responderte pero andaba liada en el trabajo. Veo que intentas hacer lo mismo que yo estoy haciendo. Quieres trabajar con archivos .txt, eso he entendido. Preguntaste si para poner archivos en un txt con una cabecera se puede hacer con la función 'fprintf', de echo es la forma adecuada cuando la parte de cabecera la introduces de forma constante y la parte de .txt es de forma matricial con caracteres.

En Matlab cuando se trabaja con archivos .txt que se desea tratar se debe tener cuidado porque al leerlos generaras lo que se conocen como 'cell arrays'. Este formato es incompatible con la función 'fprintf' por lo que si quieres volver a pegar ese contenido en otro fichero no podras hacerlos a menos que modifiques su formato pasando de 'cell array a 'character array?. Ese paso se puede realizar mediante la función '' que los pega unos a otro. Te voy a poner ejemplos de las dos situaciones, cuando generas un .txt con datos matriciale sy cabecera, y un .txt con 'character arrays'.

PRIMER CASO

matriz=[1 2 3;4 5 6;7 8 9];
B1='prueba';%Esta parte si la ponemos variable podemos generar archivos con nombres variables
Lista=strcat(B1,'.txt');%Marca el nombre del archivo que vamos a crear
D1_1=strcat('c:Archivos de programaMATLAB704work',Lista);%Marca donde se va a guardar el .txt
fid1=fopen(D1_1,'w')% Se abre un archivo txt que ya hemos denominado con anterioridad con al función 'w' de escritura
fprintf(fid1,' %s%[^n]','La matriz que estamos guardando');%Se pueden poner tantos como se deseen, lo que hay entre los dos es el fromato
fprintf(fid1, '%f%f%f n', matriz);

************************************************************
Este programa te guardaria un archivo como .txt con una cabecera 'La matriz que estamos guardando' y de contenido la matriz.

SEGUNDO CASO

EN el caso de tener en lugar de matriz un .txt con datos en columnas o separados por comas se tiene que leer primero el contenido. Esto se ahce mediante la función 'textscan', de donde se generan cell arrays del conido. Este se transforma en 'character array' mediante la función 'char' y por último se pega con  la cabecera y el 'character array'.

entrada=input('Dame el archivo .txt de entrada:  ','s');%entrada del archivo
fid1=fopen(entrada);%Se abre el archivo
datos=textscan(fid1, '%s%[^n]');%Se lee el archivo, se elige el formato que se desea.
A{1,1}=char(datos{1});%Se define las dos 'character array'
A{1,2}=char(datos{2});
space={' '};
B1=strcat(A{1,1},space,A{1,2});%Se crea una 'character cell' de todos los contenidos
cabecera=char('La cabecera que predice');
B2=strvcat(cabecera,B1);%pegado en vertical de la cabecera y lo del archivo .txt
dlmwrite('prueba.txt', B1);%La salida del archivo nuevo será 'prueba.txt'

***************************************************************************************************

Espero que esto te se ade ayuda si tienes alguna duda más sólo tienes que preguntármelo.

Mucha suerte,
Mercedes

3
Matlab / Re: Pegar archivos .txt en otro
« en: Viernes 13 de Febrero de 2009, 22:31 »
Si eso es. Pero el problema es que son archivos en forma de cell array. Ya he conseguido que se peguen las celdas en una única celda. Ahora el problema es guardarlo en un nuevo archivo en el lugar adecuado. Para otros casos lo hice con la función 'fprintf', pero en este caso como son cell no es posible utilizarla. ¿qué puedo usar?

Gracias por su atención

4
Matlab / Pegar archivos .txt en otro
« en: Viernes 13 de Febrero de 2009, 13:34 »
Buenas!

El problema ante el que me encuentro es el siguiente: Tengo dos archivos .txt de caracteres. Desearía pegarlos en otro archivo .txt cuyo nombre derive del nombre del anterior. Lo intenté con la función 'dos', es decir, con un función de MSDOS llamado 'Copy'. EL problema es que lo que le doy de entrada es una lista con los nombres de archivos .txt, y sólo desearía pegar algunos de ellos por parejas, en ese caso se trataría de un bucle 'for' que no me acepta dentro de éste la función del MSDOS.

La forma de la lista desearía así:

19704ADL.txt
19804ADL.txt
19804ADL_1.txt
19904ADL.txt

donde se querrían pegar los de 19804ADL.txt y 19804ADL_1.txt.

Espero vuestras ayuda, porque no sé como resolverlo.

Un saludo

Páginas: [1]