创建个性化列表的功能

时间:2013-11-22 00:34:45

标签: 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(person)

fprintf ( '<%s>#' , person.name ) ;
serialize_date ( person.date_of_birth ) ;
fprintf ( '#<%i>\n' , person.phone ) ;

end

需要的是个人并写出'name.day.month.year.phonenumber' 首先,我需要将它作为“输出”中的单个文本串出现,以便(我假设)在第一个函数中工作,我将如何解决这个问题?

其次,第一个函数是一个文件名和一个人的单元格。我希望它出现在一个名为'filename'的文本文件中,每行有一个个性化。 昨天我让它工作到for循环,但不知怎的,我今天无法超越第一行而没有遇到错误信息。 你能不能在这里给我一些建议,我不知道什么是错的。

1 个答案:

答案 0 :(得分:0)

要将输出写入字符数组而不是控制台,请使用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

同样修改serialize_date