add column to file with dlmwrite
Afficher commentaires plus anciens
Hello, is there anyway to add a column to an existing file using dlmwrite?
I've tried to transpose it to add lines instead and later convert it to columns again but I get the error " FILENAME must be a character vector "
A = [0.23;0.44;0.65;0.12];
A = A';
oldfile = dlmread('testfile1.txt');
oldfile = oldfile';
dlmwrite(oldfile,A,'-append','newline','pc','delimiter',' ')
1 commentaire
Star Strider
le 5 Avr 2019
Reference: Write column in .txt file
Réponses (1)
Walter Roberson
le 5 Avr 2019
0 votes
Only by rewriting the entire file.
4 commentaires
Marisabel Gonzalez
le 5 Avr 2019
Walter Roberson
le 5 Avr 2019
oldfile = dlmread('testfile1.txt');
A = [0.23; 0.44; 0.65; 0.12];
oldfile(1:length(A), end+1) = A; %done this way in case the rows are not the same
dlmwrite('testfile1.txt', oldfile, 'newline', 'pc', 'delimeter', ' ');
Devikrishna
le 12 Jan 2023
My matrix is in the form 39×39 I want to add a column using dlmwrite and make 39× 40
Walter Roberson
le 12 Jan 2023
The way that text files are designed in Windows, Mac, and Linux makes it impossible to add additional information to a row without rewriting the entire file. That applies not just to dlmwrite but also to writematrix and to using excel.
You need to use a system like I posted the code for, of reading the existing file, adding the new column in memory, and writing out the revised content
Catégories
En savoir plus sur Text Files dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!