2011-01-27 21 views
1

私はtxtファイルに書き込む人がいますが、ファイルの最後にはファイルの先頭に書き込む方法が分かります。ファイルの先頭に書き込む

これは私のfonctionです:

-(void)ecrireLog:(NSString *) identificateur 
{ 

    NSFileHandle *fichier; 
    NSData *data ; 
    NSString *chaineLog; 



    if ([self creerFichier]) 
    { 

     chaineLog = [FonctionUtile concatener:[FonctionUtile dateDuJour] chaine2:@" " chaine3:[FonctionUtile heureCourante] chaine4:@" : "]; 
     chaineLog = [FonctionUtile concatener:chaineLog chaine2:@" " chaine3:identificateur chaine4:@"\n"]; 

     data = [chaineLog dataUsingEncoding:NSUTF8StringEncoding]; 

     fichier = [NSFileHandle fileHandleForUpdatingAtPath:cheminFichier]; 

     if (fichier == nil) 
     { 
      NSLog(@"Erreur dans l'ouverture du fichier"); 
     } 
     else 
     { 
      [fichier seekToEndOfFile]; 

      [fichier writeData: data]; 
     } 

     [fichier closeFile]; 
    } 
} 

THX

+0

偉大な質問ですが、答えがまだありません。 –

答えて

0

どういうわけか私は、これはトリックの質問だと思います。

seekToEndOfFileを呼び出さないでください。

0

NSStringにテキストファイルを読み込んだら、最初に必要なテキストを含む新しいNSStringを作成し、2つの文字列を連結してテキストファイルとして保存するとどうなりますか?シンプルだと思われる。

+0

ええ、この操作では、新しいデータと古いデータの読み取り、消去、書き換えが必要です。小さなファイルでもうまく動作しますが、もっと大きなもので作業すればうまく動作します。私はファイルの先頭に新しいデータを書き込むしかないと思っています。 –

+0

うーん...私は完全には分かりません。私はコアデータについては何も知らないが、それはおそらくあなたの最善の策だろう。 – tallen11

関連する問題