How can I change where a variable is placed within the field width using fprintf?
2 次查看(过去 30 天)
显示 更早的评论
I am working with a function that specifies a field width of 20 characters for column labels.
for i=1:length(q.labels)
fprintf(fid, '%20s\t', q.labels{i});
end
The problem I am having, is that in the written file, the label is being printed to the last characters of the 20-character field width. So, for example, if my label is ‘DOG’, my column label has 17 blank spaces and then the word DOG. How can I fix this so that the label prints to the beginning of the field width?
0 个评论
采纳的回答
Yuan Li
2019-10-21
fprintf(fid,['%' num2str(length(q.labels{i})) 's\t'],q.labels{i});
change the code in the for loop will help you solve the problem.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!