Matlab - crear un txt a partir de varios txt

 
Vista:

crear un txt a partir de varios txt

Publicado por maria (1 intervención) el 11/02/2013 11:08:52
Hola mi problema es el siguiente:

Tengo una carpeta (c:/archivos) y dentro de ella tengo varios ficheros txt (la cantidad de documentos es variable, asi como los nombres de los mismos).
El caso es que quiero que cada vez que se pulse un pushbutton, junte todo el texto que se encuentra en cada fichero en un unico fichero txt (ficherofinal.txt)

Alguna ayuda?

Muchas gracias anticipadas.
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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

crear un txt a partir de varios txt

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 11/02/2013 14:20:04
1. usa ugetdir() para ubicar la carpeta,
2. luego un fgetl () para leer los archivos
3, usa while
4. fopen() para crear archivos.
y mas funciones.

Pero dentro del foro hay preguntas relacionada a tu preguntas que ya están resueltas.
Busca y adaptarlo para solucionar a tu pregunta.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.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

crear un txt a partir de varios txt

Publicado por maria (1 intervención) el 18/02/2013 23:20:23
Hola Jose, revisando el foro he sacado esto en limpio:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
nombres=dir(fullfile('C:/archivos_texto'));
 
 
fid01=fopen(['C:/archivos_texto']);
% Archivo que contiene la información
clc
fid02 = fopen(['C:/resultado/resultado.txt'],'w');
% Archivo al que se pasa la información
tline = fgetl(fid01);
while ischar(tline)
    disp(tline)
    fprintf(fid02,'%s\r\n',tline);
 
    tline = fgetl(fid01);
end
fclose(fid01);
fclose(fid02);


Mi problema es que eso esta hecho en el caso de saber los nombres concretos de los ficheros txt a unir, pero en mi caso el nombre es aleatorio....
Como podria solucionarlo¿

Es decir:

1
fid01=fopen(['C:/archivos_texto']);


en esta linea como haria para que me abriera los ficheros uno por uno¿

Muchas gracias
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

crear un txt a partir de varios txt

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 19/02/2013 00:37:59
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
>> a=dir
 
a =
 
627x1 struct array with fields:
    name
    date
    bytes
    isdir
    datenum
 
>> a(1).name
 
ans =
 
--01-A quien ire1.wav
 
>> a(2).name
 
ans =
 
--04. Cuan hermoso1.wav
 
>> a(3).name
 
ans =
 
.
 
>> a(4).name
 
ans =
 
..
 
>> a(5).name
 
ans =
 
001.pdf


Usa la función dir combinando con un bucle for para lo que quieres hacer.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
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