gpt4 book ai didi

string - MATLAB - 仅打印字符串的第一个字母

转载 作者:行者123 更新时间:2023-12-02 22:01:41 27 4
gpt4 key购买 nike

我在使用 fprtinf 命令(和 sprintf)在 MATLAB (2012a) 中打印字符串时遇到问题。

我有一个包含 12 个日期(数字)的数组。我使用以下命令将它们转换为字符串:

months = datestr(data(:,1)-365,12); %Mar13 format

当我调用 months 变量时,我获得了以下(和期望的)输出:

12 月
2月12日
3月12日
4月12日
等..

问题是当我调用 fprintfsprintf 时,例如以下代码:

fprintf('%s', months(1))

我只会得到月份的第一个字母,而不是完整的字符串。知道如何让它打印完整的字符串吗?

谢谢!

最佳答案

months 变量的结果数据类型是 NxM 字符数组。您需要将其作为字符串元胞数组处理。

dates = num2cell(data(:,1)-365)
months = cellfun(@(x) datestr(x,12),dates,'UniformOutput',false)
fprintf('%s', months{1})

应该让你得到你想要的。

关于string - MATLAB - 仅打印字符串的第一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16860488/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com