Ios 如何在Objective C中读取文本文件的最后n行
我有一个文本文件,它有很多行。如何从文本文件中获取最后的“n”行数?我们可以在文本文件中为每个文件指定数字吗?我们如何获得它。您可以使用Ios 如何在Objective C中读取文本文件的最后n行,ios,objective-c,text-files,Ios,Objective C,Text Files,我有一个文本文件,它有很多行。如何从文本文件中获取最后的“n”行数?我们可以在文本文件中为每个文件指定数字吗?我们如何获得它。您可以使用NSFileHandle,seekToEndOfFile然后使用seekToFileOffset:和readDataOfLength:从OffsetFile反向工作,扫描每次读取的回车数据并计数,直到达到所需的数字。您可以在每次扫描后构建文本。您可以使用NSFileHandle,seekToEndOfFile然后使用seekToFileOffset:和readD
NSFileHandle
,seekToEndOfFile
然后使用seekToFileOffset:
和readDataOfLength:
从OffsetFile
反向工作,扫描每次读取的回车数据并计数,直到达到所需的数字。您可以在每次扫描后构建文本。您可以使用NSFileHandle
,seekToEndOfFile
然后使用seekToFileOffset:
和readDataOfLength:
从OffsetFile
反向工作,扫描每次读取的回车数据并计数,直到达到所需的数字。您可以在每次扫描后构建文本。尝试使用以下方法:
NSString* textFile = [[NSBundle mainBundle]
pathForResource:@"fileName" ofType:@"txt"];
NSString* fileContents = [NSString stringWithContentsOfFile: textFile
encoding: NSUTF8StringEncoding error: nil];
以新行分隔
NSArray* allLinedStrings =
[fileContents componentsSeparatedByCharactersInSet:
[NSCharacterSet newlineCharacterSet]];
在这里,您可以获取最后100个对象
NSString* oneLineStr;
for (int i = allLinedStrings.count - 100; i < allLinedStrings.count; i++)
{
oneLineStr = [allLinedStrings objectAtIndex: i];
NSLog@("New Line %@", oneLineStr);
}
NSString*oneLineStr;
对于(int i=allLinedStrings.count-100;i
尝试使用此选项:
NSString* textFile = [[NSBundle mainBundle]
pathForResource:@"fileName" ofType:@"txt"];
NSString* fileContents = [NSString stringWithContentsOfFile: textFile
encoding: NSUTF8StringEncoding error: nil];
以新行分隔
NSArray* allLinedStrings =
[fileContents componentsSeparatedByCharactersInSet:
[NSCharacterSet newlineCharacterSet]];
在这里,您可以获取最后100个对象
NSString* oneLineStr;
for (int i = allLinedStrings.count - 100; i < allLinedStrings.count; i++)
{
oneLineStr = [allLinedStrings objectAtIndex: i];
NSLog@("New Line %@", oneLineStr);
}
NSString*oneLineStr;
对于(int i=allLinedStrings.count-100;i
一种方法是将\n文本文件中的不同行分开。然后
NSString* path = [[NSBundle mainBundle] pathForResource:@"filename"
ofType:@"txt"];
NSString* content = [NSString stringWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:NULL];
NSArray* lines = [content componentsSeparatedByString: @"\n"];
然后您可以获取数组中的最后几个元素
希望这有帮助。一种方法是在文本文件中放置\n分隔不同的行。然后
NSString* path = [[NSBundle mainBundle] pathForResource:@"filename"
ofType:@"txt"];
NSString* content = [NSString stringWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:NULL];
NSArray* lines = [content componentsSeparatedByString: @"\n"];
然后您可以获取数组中的最后几个元素
希望这有帮助。你的意思是你只想要最后一行?不是最后一行,而是最后100行。。试着实现我的答案。我希望你能得到你的答案…你的意思是你只想要最后一行?不是最后一行,而是最后100行…试着实现我的答案。我希望你能得到你的答案…如果文件大小是10MB怎么办?你能等几秒钟吗?当然会等,如果你有好的解决方案,请告诉我plz?如果文件大小是10 MB怎么办?你们能等几秒钟吗?当然会等,若你们有好的解决方案,请告诉我?