How to read this file in MATLAB?
22 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to access the data in a file. The file is a TextEdit Document that appears to be unsupported. How do I do this? When I input fileID = fopen(filename,'r'), the command returns 3. I guess I will need to convert the file and then read it, but how?
6 commentaires
Star Strider
le 28 Mar 2022
The readtable function is able to read it. There are two non-empty entries in ‘Var8’ and ‘Var9’ that may be non-printable characters.
T1 = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/943824/test.trj.txt', 'VariableNamingRule','preserve')
Vars_8_9_Info = [nnz(~isempty(T1.Var8)); nnz(~isempty(T1.Var9))]
Var_8_Content = cellfun(@double,T1.Var8(~isempty(T1.Var8),:), 'Unif',0);
Var_9_Content = cellfun(@double,T1.Var9(~isempty(T1.Var9),:), 'Unif',0);
.
Mathieu NOE
le 28 Mar 2022
hi
if you simply want a numerical array you can use also readmatrix
out = readmatrix('test.trj.txt' ,"NumHeaderLines", 9)
Réponses (2)
Stephen23
le 29 Mar 2022
Modifié(e) : Stephen23
le 29 Mar 2022
"I guess I will need to convert the file and then read it, but how?"
Why do you "guess" that? READTABLE has no problem importing the file data:
copyfile('test.trj.txt','test.trj') % just for this forum
fnm = 'test.trj';
opt = detectImportOptions(fnm, 'filetype','delimitedtext', 'NumHeaderLines',9, 'ExpectedNumVariables',7);
tbl = readtable(fnm,opt);
tbl.Properties.VariableNames = {'id','type','mol','x','y','z','bP'}
2 commentaires
Stephen23
le 2 Avr 2022
Modifié(e) : Stephen23
le 2 Avr 2022
"copyfile isn't ideal because the files are huge"
COPYFILE is, exactly as I wrote in my answer, just for this forum. Of course you do NOT need to use COPYFILE.
I just used it to get around the restricted file extensions that this forum supports. Another approach would have been to zip it up and then use UNZIP... but would you need to do that with your file? NO. Of course you use your file.
Voir également
Catégories
En savoir plus sur Spreadsheets dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!