【问题标题】:How to fill out the method -(BOOL)writeToFile in @implementation如何在@implementation中填写方法-(BOOL)writeToFile
【发布时间】:2013-10-13 20:41:19
【问题描述】:

首先,假设我是一个完整的初学者,因为我是。虽然这看起来很愚蠢,但我不知道该怎么做。

我一次又一次地看到调用 -(BOOL)writeToFile:(NSString*)path atomically:(BOOL)flag;在我的界面中,以便我可以将数据写入文件。

太棒了,但我需要在实现中定义该方法,AppleDev 和我在此看到的大多数其他主题只是假设我知道如何编写实现,所以它们并没有真正帮助这方面。

如果这是一个重复的问题,我深表歉意,我一直在寻找一个星期,但没有找到任何东西,所以......是的。

所以我有

@interface Objectname: NSObject

-(BOOL)writeToFile:(NSString*)path atomically:(BOOL)flag;
...

@implementation Objectname

-(BOOL)writeToFile:(NSString*)path atomically:(BOOL)flag{
//absolutely no idea what to put here???
}

我确实在到处寻找如何将字符串的 NSMutableArray 打印到文件中,我正在使用的书(因为我是学生)使它看起来很容易,但是书中的示例没有使用实现或接口,他们只是把它写在@autoreleasepool中。

我应该用另一种方法调用 writetofile 吗?还是只是在@autoreleasepool 中?

我觉得我应该这样做

[NameofMutableArray writetofile:thePathICreatedwithFileHandle];

我至少在正确的道路上吗? 谢谢

【问题讨论】:

    标签: objective-c macos interface implementation writetofile


    【解决方案1】:

    writeToFile 已经存在,并由操作系统为某些类(NSData、NSString、NSDictionary、NSArray)提供给您。如果您想将此类方法作为自定义对象的接口的一部分,那么一种简单的方法是为您的对象进行序列化,使其变为此类类型,然后在其上使用 OS 方法(然后有多种方法:我建议您可以阅读有关 NSCoding 协议的信息)

    【讨论】:

      【解决方案2】:

      如果您想在磁盘上表示您的自定义类并能够恢复等,2 个最可可选项是使用键控存档器或核心数据,键控存档器更简单,但序列化对象之间的关系要困难得多。由您决定合适的工具来完成这项工作......它甚至可以更简单,例如将您的值作为 KV 对存储在字典中并保存字典,但这会限制您使用 plist 可序列化类型,字符串、数字、字典、数组。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-10-03
        • 2015-05-07
        • 1970-01-01
        • 2016-04-18
        • 1970-01-01
        • 2021-01-08
        • 1970-01-01
        • 2013-01-12
        相关资源
        最近更新 更多