Hallo, meine Frage besteht aus mehreren Teilen und es wäre super wenn ihr mir weiterhelfen könntet.
Also ich schreibe grade an eine App. Beim ersten Start soll der Nutz einen Namen und ein Passwort eingeben. Ob es der erste Start ist frage ich mit einer Text-Datei ab. Dort steht das Wort "first" drin. Wenn der Nutzer dann ein Namen und Pw eingegeben hat soll der Text das Datei geändert werden. Wenn ich dann die App wieder Starte ( auf meinem iPhone), kommt trotzdem der Screeen der ersten Nutzung. Daher meine Frage:
- Werden die Dateien im Documents-Folder wieder gelöscht sobald die App ausgeht? oder habe ich da nen Denkfehler? Ich habe die first.txt in meinem Projekt drin.
das passiert innerhalb der viewdidload::::
Alles anzeigen
Hier die Methode welche den Inhalt ändern soll:
Alles anzeigen
Also ich schreibe grade an eine App. Beim ersten Start soll der Nutz einen Namen und ein Passwort eingeben. Ob es der erste Start ist frage ich mit einer Text-Datei ab. Dort steht das Wort "first" drin. Wenn der Nutzer dann ein Namen und Pw eingegeben hat soll der Text das Datei geändert werden. Wenn ich dann die App wieder Starte ( auf meinem iPhone), kommt trotzdem der Screeen der ersten Nutzung. Daher meine Frage:
- Werden die Dateien im Documents-Folder wieder gelöscht sobald die App ausgeht? oder habe ich da nen Denkfehler? Ich habe die first.txt in meinem Projekt drin.
das passiert innerhalb der viewdidload::::
Quellcode
- NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
- NSString *path = [docsDirectory stringByAppendingPathComponent:@"first.txt"];
- NSString *filecontent =[NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
- if (filecontent == NULL) {
- filePath = [[NSBundle mainBundle] pathForResource:@"first"
- ofType:@"txt"];
- filecontent =[NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
- NSData *dataToWrite = [[NSString stringWithFormat:@"%@",filecontent] dataUsingEncoding:NSUTF8StringEncoding];
- docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
- path = [docsDirectory stringByAppendingPathComponent:@"first.txt"];
- [dataToWrite writeToFile:path atomically:YES];
- }
- filecontent =[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
- //Parse filecontent
- lines = [filecontent componentsSeparatedByString:@"\n"];
- for(id names in lines) {
- NSLog(@"%@", names);
- }
- //Erstbefüllung;
- if ([lines[0] isEqualToString:@"first"]) {
- [self.view addSubview:firstStartView];
- self.tabBarController.tabBar.userInteractionEnabled = NO;
- [firstStartView addSubview:nameTextField];
- [firstStartView addSubview:passwordTextField];
- [firstStartView addSubview:weiterBtn];
- [firstStartView addSubview:headingLabel];
- }
Hier die Methode welche den Inhalt ändern soll:
Quellcode
- -(void)deleteFirst {
- NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
- NSString *path = [docsDirectory stringByAppendingPathComponent:@"first.txt"];
- NSError *error;
- NSString *str = @"allreadydone!";
- [str writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];
- //NSString *filecontent =[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
- }