Matlab - ¿Cómo leer una serie de archivos .txt de golpe?

 
Vista:

¿Cómo leer una serie de archivos .txt de golpe?

Publicado por Adrián Alfonso (11 intervenciones) el 18/01/2013 18:30:23
HOLA!

Voy a resumir mi problema, a ver si me podéis ayudar.
Imaginad que tengo una lista con (por ejemplo) 100 archivos .txt como sigue:

p001.txt
p002.txtt
...
p099.txt
p100.txt

Y en cada p**.txt hay guardado un texto como (para el p054.txt por ejemplo):

p054(001) = 0.355
p054(002) = 0.712
...
p054(099) = 0.522
p054(100) = 0.516

Pues bien, me gustaría poder programar en matlab, de tal manera que, para un sólo click,
me saque una variable matriz z(100,100) con los 100 valores correspondientes a cada uno de los
100 archivos .txt.

Muchas gracias por vuestra ayuda!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Cómo leer una serie de archivos .txt de golpe?

Publicado por Dave (1094 intervenciones) el 18/01/2013 21:08:29
Hola Adrián;

Muy interesante tu consulta.

De hecho que tendrías que hacer un programa Matlab, principalmente debe estas compuesto de un bucle FOR que vaya abriendo cada uno de los archivos p**.txt y posteriormente (dentro del mismo for), lea iterativamente su contenido y a la vez lo vaya almacenando en una variable.

Revisa la documentación del comando fgetl, lo cual deberias complementarlo con los bucles for y while.

Espero que sea de alguna ayuda.

Saludos
Dave Correa
[email protected]
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿Cómo leer una serie de archivos .txt de golpe?

Publicado por Adrián (11 intervenciones) el 19/01/2013 02:09:33
Hola, gracias por la aportación.
Realmente mi problema es a la hora de que me lea los archivos sucesivamente dentro del bucle.

Por ejemplo:

for i=1:100
fid = fopen('p[i].txt');C_text = textscan(fid, '%s'); % y luego ya se le registratá z(i,j)
end

Lo que no sé hacer es cómo meter esa i en el fopen para que me vaya leyendo sucesivamente los .txt del 1 al 100.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: ¿Cómo leer una serie de archivos .txt de golpe?

Publicado por Mariano (1 intervención) el 30/06/2015 16:44:13
Yo lo hago así:

for (i=1:100)
texto{i}=['p',num2str(i),'.txt']
fid(i)=fopen(texto{i})
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar