Info

此问题已关闭。 请重新打开它进行编辑或回答。

Regrouping data into text

3 次查看(过去 30 天)
Sergio
Sergio 2013-11-25
关闭: MATLAB Answer Bot 2021-8-20
Hi,
I'm trying to create an section of an input file that requires a specific formatting. The data is in 2 separate text files and I need to put it in one single text file with the following format:
first line=a{i,1}
second line=b{i,1}
third to +n line=d{i,1}
and repeat
first line=a{i,1}
second line=b{i,1}
third to +c line=d{i,1}
Here is the code I've been working on to try and do this but it does no work when printing to text. Any comments will be greatly appreciated. Thanks!
if true
clear all
clc
A1=importdata('CROSS_SECTIONS1.txt');
A2=importdata('CROSS_SECTIONS2.txt');
GR=A1.textdata{:,5};
Elevation=A1.data(:,3);
Elev_Station=A1.data(:,2);
Station1=A1.data(:,1);
X1=A2.textdata{:,1};
NC=A2.textdata{:,2};
Station2=A2.data(:,1);
StationCount=A2.data(:,2);
R_bankSt=A2.data(:,3);
L_bankSt=A2.data(:,4);
n1=A2.data(:,5);
n2=A2.data(:,6);
n3=A2.data(:,7);
A=[Station1 Elevation];
A = sortrows(A,1);
idx = cumsum(diff([0;A(:,1)])>0);
idxn = histc(idx,unique(idx));
C = mat2cell(A,idxn,size(A,2));
for i=1:length(n1)
a{i,1}={NC n1(i) n3(i) n2(i)};
b{i,1}={X1, Station2(i) StationCount(i) L_bankSt(i) R_bankSt(i) 0 0 0 0 0};
d{i,:}={C{i,:}};
fileID{i} = fopen('cross_sections.txt','a+');
fprintf(fileID{i},'%s\n',a{i,1});
fprintf(fileID{i},'%s\n',b{i,1});
fprintf(fileID{i},'%s\n',d{i,1});
fclose(fileID{i});
end
end

回答(0 个)

此问题已关闭。

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by