Import .file values

1 visualización (últimos 30 días)
Ancalagon8
Ancalagon8 el 5 de Abr. de 2024
Editada: Ancalagon8 el 6 de En. de 2025
I have a .file I need to import the data into matlab, but i have trouble handling the format.
Any help?

Respuesta aceptada

Voss
Voss el 5 de Abr. de 2024
unzip file.zip
ls *.file
file.file
str = fileread('file.file')
str =
'Fri Apr 5 11:51:00 2024 51{'y': -0.06464344482421874, 'x': -0.6272808349609375, 'z': -10.453084448242187} Fri Apr 5 11:52:00 2024 52{'y': -0.07464344482421874, 'x': -0.7272808349609375, 'z': -10.553084448242187}'
C = regexp(str,'([^\r\n]+)\d{2}{''y'':(.+?), ''x'':(.+?), ''z'':(.+?)}','tokens');
C = vertcat(C{:})
C = 2x4 cell array
{'Fri Apr 5 11:51:00 2024 '} {' -0.06464344482421874'} {' -0.6272808349609375'} {' -10.453084448242187'} {'Fri Apr 5 11:52:00 2024 '} {' -0.07464344482421874'} {' -0.7272808349609375'} {' -10.553084448242187'}
t = strtrim(C(:,1))
t = 2x1 cell array
{'Fri Apr 5 11:51:00 2024'} {'Fri Apr 5 11:52:00 2024'}
yxz = str2double(C(:,2:end))
yxz = 2x3
-0.0646 -0.6273 -10.4531 -0.0746 -0.7273 -10.5531
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
  5 comentarios
Voss
Voss el 7 de Abr. de 2024
The code in my answer uses fileread, so I guess you are trying to run the code in my comment, which is for combining multiple files into one. Since you don't have readlines, try this instead:
unzip file.zip
ls *.file
file1.file file2.file
directory = '.'; % directory where your files are
output_file = 'all_files.file'; % output file to write, containing contents of all files
files = dir(fullfile(directory,'*.file'));
files = fullfile({files.folder},{files.name});
N = numel(files);
C = cell(N,1);
for ii = 1:N
C{ii} = regexprep(fileread(files{ii}),'\r?\n$','');
end
fid = fopen(output_file,'w');
fprintf(fid,'%s\n',strjoin(C,newline()));
fclose(fid);
% check the result for these two files
type(output_file)
Fri Apr 5 11:51:00 2024 51{'y': -0.06464344482421874, 'x': -0.6272808349609375, 'z': -10.453084448242187} Fri Apr 5 11:52:00 2024 52{'y': -0.07464344482421874, 'x': -0.7272808349609375, 'z': -10.553084448242187} Fri Apr 5 11:52:00 2024 51{'y': -0.08464344482421874, 'x': -0.6272808349609375, 'z': -10.453084448242187} Fri Apr 5 11:53:00 2024 52{'y': -0.09464344482421874, 'x': -0.7272808349609375, 'z': -10.553084448242187}
Voss
Voss el 7 de Abr. de 2024
C = regexp(str,'([^\r\n]+)\d{2}{''y'':(.+?), ''x'':(.+?), ''z'':(.+?)} {''a'':(.+?), ''b'':(.+?), ''c'':(.+?)}','tokens');

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Import and Analysis en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by