iOS - initWithContentsOfURL下载旧版本的文件

时间:2014-04-02 19:46:19

标签: ios iphone initwithcontentsofurl

我的应用从服务器下载文本文件,以确定文件的内容。有一个问题,我正在更改服务器上的文件,编辑它们的内容,但是当应用程序下载它们时,文件没有改变。在浏览器中加载文件表明更改确实生效。不知何故,应用程序正在访问不应该存在的旧版本文件。这是我的代码:

 -(NSArray *)writeFile:(NSString *)section :(NSString *)item{
      NSString *fileName = [NSString stringWithFormat:@"http://myurl.com/%@/%@.txt", section, item];
    fileName = [fileName stringByReplacingOccurrencesOfString:@" "
                                     withString:@"%20"];
    NSString *data = [[NSString alloc] initWithContentsOfURL: [NSURL URLWithString: fileName] encoding:NSUTF8StringEncoding error:nil];

    NSLog(@"Read from file: %@", fileName);
    NSLog(@"Content: %@", data);
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.txt", item]];
    [data writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];
    NSString* content = [NSString stringWithContentsOfFile:path
                                              encoding:NSUTF8StringEncoding
                                                 error:NULL];

    NSArray *  arrayData = [content componentsSeparatedByCharactersInSet:
             [NSCharacterSet characterSetWithCharactersInString:@"\n\n"]
             ];
    return arrayData;


}

每个文件只有一个字符,一个数字和THAT文件正确下载。其余文件较大,有多行。当我将文件移动到其他服务器时,他们将下载正确版本的文件,但如果我再次进行更改并尝试从新源重新下载,则更改不会反映在下载中(但仍在服务器上)。

我很困惑,除非它能保存某种形式的cookie,否则我无法看到它会这样做的任何理由。想法?

1 个答案:

答案 0 :(得分:0)

这是电话的错。我使用我的Note 3作为无线热点,因为正常的wifi连接范围距离我坐的地方20英尺。有一次我连接到传统的wifi,它工作得很好。