在項目中,我有一個名爲GAME.js一個純文本文件,而我試圖獲得該文件的內容。獲取文件的內容在Xcode
[NSString stringWithContentsOfFile:@"GAME.js" encoding:NSUTF8StringEncoding error:nil];
聽起來像它應該工作,但它只是返回一個空字符串。
請幫我解決這個問題。
在項目中,我有一個名爲GAME.js一個純文本文件,而我試圖獲得該文件的內容。獲取文件的內容在Xcode
[NSString stringWithContentsOfFile:@"GAME.js" encoding:NSUTF8StringEncoding error:nil];
聽起來像它應該工作,但它只是返回一個空字符串。
請幫我解決這個問題。
如果您在NSError
通過它會告訴你到底是什麼問題:
NSError *error = nil;
NSString *myString = [NSString stringWithContentsOfFile:@"GAME.js" encoding:NSUTF8StringEncoding error:&error];
if (error) {
NSLog(@"%@", [error localizedDescription]);
} else {
NSLog(@"%@", myString);
}
此外,檢查,看它是否是在你的文檔目錄可以是用NSSearchPathForDirectoriesInDomains
訪問:
NSError *error = nil;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *fullPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"GAME.js"];
NSString *myString = [NSString stringWithContentsOfFile:fullPath encoding:NSUTF8StringEncoding error:&error];
if (error) {
NSLog(@"%@ - %@", [error localizedDescription], [error localizedFailureReason]);
} else {
NSLog(@"%@", myString);
}
把GAME.js
到Resources
文件夾中的Xcode項目並使用下面的代碼來獲取文件的內容。
NSError *error = nil;
NSString* path = [[NSBundle mainBundle] pathForResource:@"GAME" ofType:@"js"];
NSString* gameFileContents = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];
o_O操作無法完成。 (可可錯誤260) - (空) – milo
對不起,我misinterperted該評論是在我給你的代碼中的錯誤,而不是實際的錯誤......我會向谷歌錯誤代碼(260),但看看@ChrisLedet答案,這可能會奏效。如果他的答案不起作用,請嘗試我在上一個答案編輯中添加的內容。 – chown
注意,在可可(觸摸)應該[檢查錯誤輸出參數之前檢查方法返回值](http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/ErrorHandlingCocoa/CreateCustomizeNSError/CreateCustomizeNSError的.html)。 – 2011-10-30 04:50:05