0

我有一个保存taxtfield日期的例子

- (NSString *) getFilePath {
    NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    return [[pathArray objectAtIndex:0] stringByAppendingPathComponent:@"saved.plist"];
}

 -(void) saveData {
    NSArray *value = [[NSArray alloc] initWithObjects:[myTextField text],nil];
    [value writeToFile:[self getFilePath] atomically:YES];
}

但是如何将变量的值保存在文件中?

NSInteger = record1, record2;
4

2 回答 2

1

此外,如果您不想写入特定文件,请NSUserDefaults使用方法检查类– setInteger:forKey:– integerForKey:存储和检索整数值。

于 2012-09-30T15:19:43.400 回答
0

NSInteger不是 Objective-C 类型,但您可以将其转换为NSNumber以将其存储在数组(或字典)中:

NSInteger record1 = 17, record2 = 23;
NSNumber *number1 = [NSNumber numberWithInteger:record1];
NSNumber *number2 = [NSNumber numberWithInteger:record2];

从 Xcode 4.4 开始,您还可以使用“盒装表达式”语法:

NSNumber *number1 = @(record1);

现在您可以将数字放入数组中:

NSArray *arrayToSave = [[NSArray alloc] initWithObjects:number1, number2, nil];
[arrayToSave writeToFile:[self getFilePath] atomically:YES];

您还应该考虑使用字典而不是数组来存储各种值,例如(再次使用装箱表达式):

NSDictionary *dictToSave = @{
    @"value1" : number1,
    @"value2" : number2,
    @"textField" : [myTextField text]
};
[dictToSave writeToFile:[self getFilePath] atomically:YES];
于 2012-09-30T14:28:31.340 回答