2

12個の.cafファイルのディレクトリがいくつかあり、プログラムでロードしています。

NSString *soundToPlay = [NSString stringWithFormat:@"sounds/%d/%d_%d.caf", type, note, timbre];

9たとえば、これらの値の1つでからにインクリメントしたい場合10、突然私の文字列が余分な文字の長さになり、後でのようなもので操作するのが難しくなりNSMakeRangeます。%dこれらすべてを1つの文字にまとめたいと思います。

私がやりたいのは、0〜9の数字を使用してファイルに名前を付けますが、10、11、12ではなくA、B、Cを続けます。これにより、すべてが1文字のままになります。この種のことを行う簡単な方法があり、それでもインクリメント、+ /-、モジュロなどを許可することを望んでいます。もしそうなら、それは何ですか?

4

1 に答える 1

1

X16進形式の指定子は次のとおりです。

[NSString stringWithFormat:@"sounds/%X/%X_%X.caf", type, note, timbre]

または、常に2桁の数字を使用することもできます。これにより、16を超えるケースから選択できるようになります。

[NSString stringWithFormat:@"sounds/%02d/%02d_%02d.caf", type, note, timbre]
于 2012-05-10T16:11:36.630 に答える