Matlab 创建个人信息列表的函数
我有这个功能Matlab 创建个人信息列表的函数,matlab,function,text,Matlab,Function,Text,我有这个功能 fid = fopen(filename,'w'); if exist('fid') check = true; else check = false; end for i=1:length(persons) fprintf(fid, '%s\n',serialize_person(persons(i))); end end serialize_person在哪里 function [output] = serialize_person(per
fid = fopen(filename,'w');
if exist('fid')
check = true;
else
check = false;
end
for i=1:length(persons)
fprintf(fid, '%s\n',serialize_person(persons(i)));
end
end
serialize_person在哪里
function [output] = serialize_person(person)
fprintf ( '<%s>#' , person.name ) ;
serialize_date ( person.date_of_birth ) ;
fprintf ( '#<%i>\n' , person.phone ) ;
end
function[output]=serialize\u person(person)
fprintf(“#”,person.name);
序列化_日期(person.date_出生日期);
fprintf(“#\n”,person.phone);
结束
这是一个个人签名,写上“姓名、日期、月份、年份、电话号码”
首先,我需要将它作为“output”中的单个文本字符串显示出来,以便它(我假设)在第一个函数中工作,我将如何进行
其次,第一个函数是一个文件名和一个人员单元。我希望它出现在一个名为“filename”的文本文件中,每行一个personalia。
昨天我让它一直工作到for循环,但不知怎么的,今天我无法越过第一行而不出现错误消息。
你能在这里给我一些建议吗,我不知道出了什么问题。要将输出写入字符数组而不是控制台,请使用
sprintf
。另外,要在字符串之间使用“”连接字符串。
,请尝试设置分隔符的“strjoin
”:
function [output] = serialize_person(person)
delim = '.';
output = strjoin(sprintf ( '<%s>#' , person.name ), ...
serialize_date ( person.date_of_birth ), ...
sprintf ( '#<%i>\n' , person.phone ), delim);
end
function[output]=serialize\u person(person)
delim=';
output=strjoin(sprintf('#',person.name)。。。
序列化\u日期(person.date\u出生日期)。。。
sprintf('#\n',person.phone),delim;
结束
类似地修改
serialize\u date
。这个问题运气好吗?