How to export struct saved in workspace to text file

조회 수: 3 (최근 30일)
ProgramNerd
ProgramNerd 2022년 8월 1일
댓글: ProgramNerd 2022년 8월 1일
Hi, I have a struct with some fields inside. I want to be able to export the struct (or at least 2 of the fields inside) to a text file. Any help would be appreciated. Thanks
  댓글 수: 6
Walter Roberson
Walter Roberson 2022년 8월 1일

see https://www.mathworks.com/help/matlab/ref/jsonencode.html#mw_69b38ba2-26d1-4025-a426-d1bf8ca939a7

ProgramNerd
ProgramNerd 2022년 8월 1일
Great thank you, definetely something I need to look into and expand my knowlegde on

댓글을 달려면 로그인하십시오.

채택된 답변

Abderrahim. B
Abderrahim. B 2022년 8월 1일
편집: Abderrahim. B 2022년 8월 1일
Convert to table and then wrtie to text file:
% Example 1: convert and write to table
S.Str = 'I Love MATLAB'
S = struct with fields:
Str: 'I Love MATLAB'
S.Date = datetime("now")
S = struct with fields:
Str: 'I Love MATLAB' Date: 01-Aug-2022 14:21:48
Stb = struct2table(S)
Stb = 1×2 table
Str Date _____________ ____________________ I Love MATLAB 01-Aug-2022 14:21:48
writetable(Stb, "Stb.txt")
Edit:
% Example 2: using jsonencode and fprintf
clear
S.A1 = [9.9, 9900];
S.A2 = [8.8, 7.7 ; ...
8800, 7700];
S = jsonencode(S, "PrettyPrint", true)
S =
'{ "A1": [ 9.9, 9900 ], "A2": [ [ 8.8, 7.7 ], [ 8800, 7700 ] ] }'
  • Export to text file
I do not know about your struct, so I'm skipping formatSpec.
NB: fprintf has an option called formatSpec that you may need to set as first argument to fprintf.
fileID = fopen('myS.txt','w');
nbytes = fprintf(fileID,S) ;
fclose(fileID);
Hope this helps
  댓글 수: 5
Abderrahim. B
Abderrahim. B 2022년 8월 1일
@ProgramNerd edited my answer. Check it out.
ProgramNerd
ProgramNerd 2022년 8월 1일
Great thank you, so much nicer now. Really appreicated all the help

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Type Conversion에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by