Como práctica, estoy tratando de escribir una aplicación similar a la aplicación de notas incorporada.
Pero no puedo encontrar la forma de guardar el archivo y mostrarlo en un UITableView
.
En este momento, tengo un UITextView
que el usuario puede escribir. También tengo un botón de guardar.
Cuando el usuario toca el botón Guardar, quiero guardarlo y luego mostrarlo en una vista de tabla.
Estoy muy perdido así que si conoces algún tutorial relevante, etc. sería muy apreciado.Escribir y leer archivos de texto en el iPhone
Respuesta
Según lo observado por los comentaristas en el mundo real, definitivamente querrá ver los datos centrales o alguna otra estrategia de persistencia de datos. Si usted está empeñado en perseguir esto como una experiencia de aprendizaje, algo como esto debería resolver su problema:
- (void)writeStringToFile:(NSString*)aString {
// Build the path, and create if needed.
NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = @"myTextFile.txt";
NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
if (![[NSFileManager defaultManager] fileExistsAtPath:fileAtPath]) {
[[NSFileManager defaultManager] createFileAtPath:fileAtPath contents:nil attributes:nil];
}
// The main act...
[[aString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileAtPath atomically:NO];
}
- (NSString*)readStringFromFile {
// Build the path...
NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = @"myTextFile.txt";
NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
// The main act...
return [[[NSString alloc] initWithData:[NSData dataWithContentsOfFile:fileAtPath] encoding:NSUTF8StringEncoding] autorelease];
}
¿Es mejor que usar [NSString writeToFile] (https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html)? –
hola. Obtuve un error y fallo en esta línea: [[aString dataUsingEncoding: NSUTF8StringEncoding] writeToFile: fileAtPath atómicamente: NO]; – kemdo
La forma más fácil de guardar mensajes de texto está usando NSUserDefaults.
[[NSUserDefaults standardUserDefaults] setObject:theText forKey:@"SavedTextKey"];
o, si usted quiere tener el nombre de usuario cada "archivo" o ser capaz de tener varios archivos
NSMutableDictionary *saveTextDict = [[[[NSUserDefaults standardUserDefaults] objectForKey:@"SavedTextKey"] mutableCopy] autorelease];
if (saveTextDict == nil) {
saveTextDict = [NSMutableDictionary dictionary];
}
[saveTextDict setObject:theText forKey:fileName];
[[NSUserDefaults standardUserDefaults] setObject:saveTextDict forKey:@SavedTextKey"];
Si todo lo que se necesita es un ahorro de cadenas rápido y sucio, entonces opte por el enfoque plist. Pero si vas a aumentar de escala, trata de resistir la tentación que te ofrece su facilidad de uso. –
- 1. Leer y escribir archivos binarios en VBScript
- 2. PHP leer y escribir archivos de JSON
- 3. Leer/escribir archivos en Python
- 4. Escribir/Leer archivo plist iPhone
- 5. ¿Cómo leer y escribir varios archivos?
- 6. Java - leer, manipular y escribir archivos WAV
- 7. J2ME/Blackberry: ¿cómo leer/escribir archivos de texto?
- 8. ¿Cómo leer y escribir archivos xml?
- 9. phonegap leer y escribir el archivo json
- 10. Leer (y escribir) archivos RTF con C++/Qt
- 11. ¿Cómo leer/escribir archivos con iOS, en el simulador y en el dispositivo?
- 12. Forma recomendada para leer y escribir archivos .ini en VBA
- 13. ¿Cómo puedo leer, reemplazar y escribir archivos de gran tamaño?
- 14. ¿Cómo leer archivos de texto en Android?
- 15. ¿Alguna buena biblioteca para leer y escribir archivos csv?
- 16. Biblioteca para leer/escribir archivos pbxproj/xcodeproj?
- 17. Leer el texto de la imagen iPhone SDK
- 18. Socket leer y escribir simultáneamente
- 19. Leer el archivo de texto en una matriz de cadenas (y escribir)
- 20. Leer y escribir en el mismo archivo con proceso diferente
- 21. ¿archivo abierto para leer y escribir?
- 22. Leer y escribir cookies en Symfony2
- 23. ¿Cómo leer un archivo y escribir en un archivo de texto?
- 24. Leer y escribir en un archivo mientras mantiene el bloqueo
- 25. Java FileLock para leer y escribir
- 26. Usando FileFormat v Serde para leer archivos de texto personalizados
- 27. ¿Puede Flash Action Script leer y escribir el sistema de archivos local?
- 28. Delphi 2009 clases/componentes para leer/escribir permisos de archivos
- 29. ¿Diferencias semánticas entre guardar/escribir/almacenar y leer/cargar?
- 30. ¿Hay alguna forma de leer y escribir archivos en memoria en R?
Una respuesta que es probable que no quiere oír es "No usar archivos de texto ". Puede echar un vistazo a algunas estrategias integradas de serialización (plists). – hanno
@hanno - También agregaría que incluso mejor que los plists, use Core Data. Es rápido, eficiente y, lo que es más importante, * escalable *. –