0

我有这个

fprintf(emailFile, '%s' , fname); 
fprintf(emailFile, '%s' , lname); 
fprintf(emailFile, '%i' , id); 
fprintf(emailFile, '%s\n' , dept); 

我需要这样做,以便电子邮件文件显示 fname.lname.id@dept.edu 但我不知道如何处理连接。

4

1 回答 1

2

正如 Ben Voigt 在他的评论中指出的那样,将电子邮件地址的各个部分与正确的分隔符连接起来的最简单方法是使用这样一个事实,即fprintf它的表亲sprintf采用参数来控制字符串的格式和实际内容。

例如,您可以使用完整的电子邮件地址创建一个字符串,如下所示:

completeAddress = sprintf('%s.%s.%i@%s.edu', fname, lname, id, dept);

如您所见,一些字符控制“在此处插入下一个字符串参数”,而格式化字符串中的其他字符只是被复制到输出字符串。另请注意,如果您的 ID 是最多四个字符长的整数,并且您想对小数字(0876而不是876)进行零填充,则可以使用例如%04i用于格式化。

写入中间字符串(而不是直接写入文件)可以让您确认您拥有所需的字符串;然后,您可以使用单个语句将其写入文件(emailFile当然,假设这是一个有效的文件 ID)

fprintf(emailFile, '%s\n', completeAddress);
于 2013-03-27T19:32:01.400 回答