0
我有一個多行文件,我試圖通過將其轉換爲NSString來讀取它。 我在這裏看過:How to read data from NSFileHandle line by line?,但這並不適用於這種情況,因爲它不應該是一個循環;我並不是想要閱讀整件事,只是一行。將文件的第一行轉換爲NSString
示例文件:
ThingsIWantToRead
Blah Blah Blah
Blah Blah BLah
Ect. Ect.
我想我已經成功地得到了程序文件中的每一行到一個數組,但現在我不能得到數組成的NSString的第一個對象。 Apple的關於getObjects:range:for NSArray(https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/NSArray.html)的文檔在ARC之前,所以Xcode給了我有關將指針類型void *轉換爲__ strong id *等錯誤。
//This gets first line of file and sets it as a NSString usernameCaseSensitive
NSString * fileHandler = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL];
NSArray * fileContents = [fileHandler componentsSeparatedByString:@"\n"];
//Set the NSRange
NSRange range = NSMakeRange (1, 1);
id * objects;
objects = malloc(sizeof(id) * range.length);
NSString * firstLine = [fileContents getObjects:objects range: range];
那是相當容易那麼文檔...難道我只是有[1]如果我想要的的NSString成爲第二個對象的內容? –
是的。這是訪問數組中對象的新的下標符號。這相當於調用'[myArray objectAtIndex:index]'。儘管如此,請小心進行理智檢查以發現錯誤。 – Mario