gpt4 book ai didi

iphone - 如何在应用程序启动时从文档目录中检索数据?

转载 作者:行者123 更新时间:2023-11-29 13:22:01 24 4
gpt4 key购买 nike

我已经创建了录制声音并在 tableview 中显示该声音文件的应用程序。在该应用程序中,当录制声音时,它的 filepath 将存储在一个数组中,我使用该数组来填充我的 tableview。但我的问题是,当我关闭应用程序时,我的数组将为空,并且我丢失了我的记录文件。

那么现在我第二次打开我的应用程序时如何获取我的录制文件。我将声音文件存储在文档目录中。

最佳答案

将数组存储在 NSUserDefaults 中。检索数组并将其存储在 NSUserDefaults 中。请参阅 NSUserDefaults

的示例

AppDelegate.h 文件中声明变量...

    NSUserDefaults  *userDefaults;
NSMutableArray *yourArray;
after...

AppDelegate.m中填写applicationDidFinishLonching:方法

    userDefaults = [NSUserDefaults standardUserDefaults];
NSData *dataRepresentingtblArrayForSearch = [userDefaults objectForKey:@"yourArray"];
if (dataRepresentingtblArrayForSearch != nil) {
NSArray *oldSavedArray = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingtblArrayForSearch];
if (oldSavedArray != nil)
yourArray = [[NSMutableArray alloc] initWithArray:oldSavedArray];
else
yourArray = [[NSMutableArray alloc] init];
} else {
yourArray = [[NSMutableArray alloc] init];
}
[yourArray retain];

之后,当您想在此 UserDefaults 中插入数据时,请使用以下代码...

    [appDelegate.yourArray addObject:yourDataString];///set your value or anything which you want to store here...
NSData *data=[NSKeyedArchiver archivedDataWithRootObject:appDelegate.yourArray];
[appDelegate.userDefaults setObject:data forKey:@"yourArray"];
[appDelegate.userDefaults synchronize];

希望对你有帮助...

关于iphone - 如何在应用程序启动时从文档目录中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14155882/

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