NSString 格式化

NSString formatting

我正在更改一些预先编写的代码,视频时间标签的格式如下:

return [NSString stringWithFormat:@"%2d:%0.2d", minutes, seconds];

发生的事情是,如果 minutes 是一个数字,它会在它之前返回一个 space,例如 4:49 在 4 之前有一个 space。如何如果 minutes 参数是 2 位数字,我应该格式化以便字符串中有 2 个字符,但如果 minutes 是 1 位数字则只有 1 个字符?

您想要以下内容:

return [NSString stringWithFormat:@"%d:%02d", minutes, seconds];

只需使用 %d 即可显示号码所需的任意位数。 seconds 不应该有小数。 %02d 表示至少显示两位数字并在左侧填充前导零以确保在需要时有两位数字。