2

我仍在尝试学习 Objective-C 并拥有一个从 Web 服务器下载文档的应用程序。这些文档位于十个预定义的文件夹中,每个类别都有单独的类

我当前访问文件的方式是,在每个 .m 文件的顶部,我将父文件夹的 URL 定义为字符串,子文件夹定义为单独的字符串:

#define WEBHOST @"http://webserverURL/mainfolder"
#define FOLDER @"subfolderName"

然后连接它们:

NSString *pathString = [NSString stringWithFormat:@"%@%@", WEBHOST, FOLDER];
NSURL *documentsDirectoryURL = [NSURL URLWithString:pathString];
NSData *documentsHTMLData = [NSData dataWithContentsOfURL:documentsDirectoryURL];

然后,我根据需要解析 HTMLhpple并进行处理。我不确定这是否是一种特别有效的技术,但它似乎可以满足我的需要。但是,它似乎有点混乱,我想我错过了一些更简单或更有效的方法来实现这一点。

我的问题是:这是一种合理的做法,还是我犯了典型的新手罪行,使事情变得比他们需要的更复杂和混乱?

4

2 回答 2

7

好吧,您可以执行以下操作:

#define WEBHOST @"http://webserverURL/mainfolder"
#define FOLDER WEBHOST @"/subfolderName"

它应该将网络主机名称连接到文件夹名称。可能会节省一行代码。

于 2012-11-06T14:49:17.053 回答
2

您的方法很好,但我建议将所有定义放入一个头文件中并包括在内。您必须重新定义WEBHOST可能导致错误的因素:

urldefs.h:

#define WEBHOST @"http://webserverURL/mainfolder"
#define SUBFOLDER1 @"subfolder1Name"
...
#define SUBFOLDER2 @"subfolder2Name"
#define SUBFOLDERn @"subfoldernName"
于 2012-11-06T14:51:52.457 回答