MATLAB: How to combine 4 .txt files in a single.txt file

combineconcatenatefiletext filetxt

I have 4 .txt files, they've the same number of lines, but different numbers of columns.
The number one is like:
A
B
C
D
The number 2 is like:
1 x
2 y
3 z
4 w
I'd like to put then like that:
A 1 x
B 2 y
C 3 z
D 4 w

Best Answer

Create a list of file File at first. Then import the lines:
File = {'a1.txt', 'a2.txt', 'a3.txt', 'a4.txt'}; % Thanks Walter
numberOfFiles = length(File); %
C = cell(1, numberOfFiles);
for k = 1:numberOfFiles
C{k} = strsplit(fileread(File{k}), '\n');
end
% Now export the joined lines:
AllC = C{1};
for k = 2:numel(C)
AllC = strcat(AllC, {' '}, C{k}); % [EDITED] With a space as separator here
end
[fid, msg] = fopen('Outfile.txt', 'w');
if fid == -1, error('Cannot open file for writing: %s', msg); end
fprintf(fid, '%s\n', AllC{:});
fclose(fid);
[EDITED] in the code: strcat omits spaces except if they are in a cell string. Fixed now.