我正在构建一个音叉应用程序。货叉最多应允许12个预设螺距。

此外,我希望允许用户选择主题。每个主题都将加载一组预设(不必使用所有预设)。

我的配置文件看起来像这样*:

(*当然,我很乐意修改格式以简化必要的代码,考虑到客户将手动构建自己的文件,因此我想避免不必要的开销/混淆)

theme: "A3"
comment: "An octave below concert pitch (ie A4 440Hz)"
presets: {
    A3 220Hz=220.0
}

// http://en.wikipedia.org/wiki/Guitar_tuning
theme: "Guitar Standard Tuning"
comment:"EADGBE using 12-TET tuning"
presets: {
    E2=82.41
    A2=110.00
    D3=146.83
    G3=196.00
    B3=246.94
    E4=329.63
}

theme: "Bass Guitar Standard Tuning"
comment: "EADG using 12-TET tuning"
presets: {
    E1=41.204
    A2=55.000
    D3=73.416
    G3=97.999
}


...需要提取为以下某种结构:

@class Preset
{
    NSString* label;
    double freq;
}

@class Theme
{
    NSString* label;
    NSMutableArray* presets;
}

NSMutableArray* themes;


我有什么选择?我如何才能做到这一点?谁能指出我一些相关的代码?

(注意:这与标题几乎相同的另一个问题不是重复的,因此请不要仅仅因为标题匹配而将其标记出来)

最佳答案

解析json怎么样?您发布的代码看起来像json。

07-26 07:39