-1

ログまたはデータ数が 50 を超えたときにローカルに書き込むために、いくつかのログを書き込んでいます。データをサーバーに投稿したいのです。次に、次の 50 個のログ値を書き込みます。私の質問は、ファイル数を取得する方法と、これを維持するにはどうすればよいかです。

4

1 に答える 1

0

ファイル内のEDIT count レコード

新しいログをファイルに追加するときに\n行文字で追加することに注意してください。これにより、追加されたログの数を知ることができます

NSString *str = [[NSString alloc]initWithContentsOfFile:yourFilePath encoding:NSUTF8StringEncoding error:nil];
NSArray *arrLogs = [str componentsSeparatedByString:@"\n"];
NSLog(@"Count of logs : %d",[arrLogs count]);

次のようなコンテンツの数を取得する方法については、これを確認してください。

NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:dirPath error:nil];

次のようにコンテンツをフィルタリングします。

NSPredicate *fltrtxt = [NSPredicate predicateWithFormat:@"self ENDSWITH '.txt'"];
NSArray *onlytxts = [dirContents filteredArrayUsingPredicate:fltrtxt];

カウントは次のとおりです。

if([onlytxts count] >= 50)
{
  //save new log to doc dir
  // post data to server;
  //after posting data u can do anything
}
于 2012-08-20T09:53:26.030 に答える