我一直在解決這個問題幾個小時,但我仍然無法得到它的工作。我已經嘗試了所有我在stackoverflow上找到的解決方案,但沒有任何工作。下面是我的代碼:無法使用stringWithContentsOfFile從文件中獲取正確的數據
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
NSFileManager *fileManager;
NSString *currentPath;
NSString *content;
content = [[NSString alloc] init];
NSString *filename;
filename = @"/Tasty Noodle House.xlsx";
fileManager = [NSFileManager defaultManager];
currentPath = [fileManager currentDirectoryPath];
NSError* error;
content = [NSString stringWithContentsOfFile:[currentPath stringByAppendingString:filename] encoding:NSUTF16LittleEndianStringEncoding error:&error];
NSLog(@"current path: %@",currentPath);
NSLog(@"filecontent: %@",content);
NSLog(@"error: %@", error);
}
我已經檢查的路徑是正確的,該文件確實存在,在這條道路(currentPath)。但是,問題是,行NSLog(@「filecontent:%@」,內容);根本不打印出來。打印輸出如下所示:
2016-01-23 11:30:11.367 ScaryBugsMac[1377:222946] current path: /Users/username/Library/Developer/Xcode/DerivedData/ScaryBugsMac-buobqwjccigdqthjejrzmgasnzyf/Build/Products/Debug
2016-01-23 11:30:11.367 ScaryBugsMac[1377:222946] error: (null)
根據我的經驗,它應該打印出至少「filecontent:(空)」,但它是很奇怪的沒有得到打印出來。
我也使用enconding嘗試:NSUTF8StringEncoding,它給我的錯誤:其他
2016-01-23 11:32:44.708 ScaryBugsMac[1404:230157] current path: /Users/username/Library/Developer/Xcode/DerivedData/ScaryBugsMac-buobqwjccigdqthjejrzmgasnzyf/Build/Products/Debug
2016-01-23 11:32:44.708 ScaryBugsMac[1404:230157] filecontent: (null)
2016-01-23 11:32:44.709 ScaryBugsMac[1404:230157] error: Error Domain=NSCocoaErrorDomain Code=261 "The file 「Tasty Noodle House.xlsx」 couldn’t be opened using text encoding Unicode (UTF-8)." UserInfo=0x60000007a740 {NSFilePath=/Users/username/Library/Developer/Xcode/DerivedData/ScaryBugsMac-buobqwjccigdqthjejrzmgasnzyf/Build/Products/Debug/Tasty Noodle House.xlsx, NSStringEncoding=4}
兩件事情:
我已經嘗試了所有的編碼和問題下降成上述兩種情況之一。
我可以在我的Mac上使用Excel打開xlsx文件,沒有任何問題。所以我不認爲這個文件有什麼問題。
我真的很感激任何幫助,謝謝!
謝謝!我將去查找和解析excel文件的開源工具objective-c –