fscanfを用いた行列ファイルデータの読み取りについて
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Yusaku Ando
el 6 de Oct. de 2017
行列の配列が異なる複数のtxtファイルを下のようにリストにまとめ、ループ中でfscanfによって行列を読み取ると、x行y列のデータがx×y行1列で表示されてしまいます。x=fscanf(infile,'%f'、[x y]);とすれば表示できると思いますが他のデータと配列が異なるので自動的に元の配列で表示させたいです。どのように訂正すれ可能になるでしょうか。
LIST=dir('*.txt');
file=fopen('fname.txt','wt');
n=length(LIST);
for i=1:n
out=LIST(i,1).name;
fprintf(file,'%s\n',out);
end
fclose(file);
fid=fopen('fname.txt');
data=textscan(fid,'%s');
infnames=data{1,1};
n=length(infnames);
for i=1:n
fname=infnames(i,1);
fname=char(fname);
[pathstr, name, ext] = fileparts(fname);
infile=fopen(fname);
s=fscanf(infile,'%f');
%省略
end
0 comentarios
Respuesta aceptada
Más respuestas (0)
Ver también
Categorías
Más información sobre テキスト ファイル en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!