Wie speichere ich eine Datei mit Endung

  • Wie speichere ich eine Datei mit Endung

    Hallo alle zusammen,

    ich habe ein kleines Problem, ich habe einen kleinen Editor geschrieben. Das Problem ist das ich zwar Dateien speichern kann, aber leider ohne Endung.


    [[NSFileManager defaultManager] createFileAtPath:filePath contents:nil attributes:nil];

    NSOutputStream *outputStream = [NSOutputStream outputStreamToFileAtPath: filePath append:NO];


    Verwende ich zum speichern, danach schreibe ich noch was in die Datei rein, das funktioniert auch super.


    Ich habe mal mit
    NSDictionary *typ = [[NSDictionary alloc] initWithContentsOfFile:filePath];

    [typ setValue:@"html" forKey:@"NSFileType"];



    experimentiert, aber das bekomme ich irgendwie nicht richtig hin. Dachte ich mache das so und packe dann "typ" oben bei attributes rein, geht leider nicht.


    Wäre toll wenn ihr mir helfen könntet.


    Schon mal dank.


    Gruß
    Cabaalo
  • ups sorry werde ich nächstes mal verwenden. Hatte ich mir auch schon gedacht. Hatte ich mal probiert mit der Dateiendung im Pfad, da hatte er, wenn ich mich recht erinnere, dann einen Ordner mit dem Namen der Datei gemacht und in diesem Ordner dann eine Datei mit dem Namen der Endung.

    P.S.: -Carpe Diem- sehe ich auch so
  • Musst du unbedingt mit dem NSOutputstream arbeiten?

    Wenn nicht:


    Quellcode

    1. NSFileManager *fileManager = [NSFileManager defaultManager];
    2. NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    3. NSString *filePath = [documentsPath stringByAppendingPathComponent:@"Test.txt"];
    4. if ([fileManager fileExistsAtPath:filePath]) {
    5. [fileManager removeItemAtPath:filePath error:nil];
    6. }
    7. if ([fileManager createFileAtPath:filePath contents:nil attributes:nil]) {
    8. NSFileHandle *savedFile = [[NSFileHandle fileHandleForWritingAtPath:filePath] retain];
    9. [savedFile writeData:[[NSString stringWithString:@"Hallo, das ist ein Test!"] dataUsingEncoding:NSUTF8StringEncoding]];
    10. [savedFile synchronizeFile];
    11. [savedFile closeFile];
    12. [savedFile release];
    13. }
    Alles anzeigen
    -Carpe Diem-
  • Cabaalo schrieb:

    Ne eigentlich ist mir das völlig egal, wie ich die Datei erstelle. Ich probiere das mal aus. Danke.

    Gruß Cabaalo

    P.S.: Ach ja geht das auch im iOS? Denke ich mal aber besser mal nach fragen ;)


    Du kannst es einfach mit '- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag'abspeichern.
    Ähnliche Methoden findest Du in allen wichtigen Containerobjekten.
    I would be embarrassed if they did not spy on me.