Fragmento muy breve: el iPhone de Apple sistema de archivos

Tanto en el Mac OS X y iPhone OS, se puede acceder fácil y directamente en el directorio - más importante - el sistema que son:

1
2
3
NSHomeDirectory Devuelve la ruta al directorio home del usuario actual.
Devuelve la ruta de NSHomeDirectoryForUser Dado un directorio home del usuario.
NSTemporaryDirectory Devuelve la ruta del directorio temporal del usuario actual.

Aquí está el código necesario para su uso:

1
2
3
4
5
6
7
8
9
10
11
/ / Main directorio
homePath = NSHomeDirectory ( ) ; NSString * NSHomeDirectory HOMEPATH = ();
tempPath = NSTemporaryDirectory ( ) ; NSString * TempPath NSTemporaryDirectory = ();
userPath = NSHomeDirectoryForUser ( NSUserName ( ) ) ; NSString * = userPath NSHomeDirectoryForUser (NSUserName ());
"homePath = %@" , homePath ) ; NSLog (@ "HOMEPATH =% @", HOMEPATH);
"tempPath = %@" , tempPath ) ; NSLog (@ "TempPath =% @", TempPath);
"userPath = %@" , userPath ) ; NSLog (@ "userPath =% @", userPath);

/ / HOMEPATH = / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905
/ / = TempPath / private/var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905/tmp /
/ / = UserPath / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905

Nota: usted ha notado, la línea 4, la llamada a NSUserName() que devuelve el "usuario actual"

Hay, pues, una serie de "carpetas" que podemos acceder. Estos pueden ser obtenidos llamando a la función NSSearchPathForDirectoriesInDomains() pasando como entradas de un conjunto de constantes. Por ejemplo, podemos obtener la carpeta de Documentos de esta manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
paths = NSSearchPathForDirectoriesInDomains ( NSDocumentDirectory, NSUserDomainMask, YES ) ; NSArray caminos * = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, SI);
"paths = %@" , paths ) ; NSLog (@ "caminos =% @", caminos);

/ / Paths = ("/ var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905/Documents")

/ / Los documentos de la carpeta
documentsPath = [ paths objectAtIndex : 0 ] ; NSString * documentsPath = [caminos objectAtIndex: 0];
"documentsPath = %@" , documentsPath ) ; NSLog (@ "documentsPath =% @", documentsPath);

/ / = DocumentsPath / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905/Documents

/ / O ...
documentsDirectory = [ NSHomeDirectory ( ) stringByAppendingPathComponent : @ "Documents" ] ; NSString * documentsDirectory = [NSHomeDirectory () stringByAppendingPathComponent: @ "Documentos"];
"documentsDirectory = %@" , documentsDirectory ) ; NSLog (@ "documentsDirectory =% @", documentsDirectory);

/ / = DocumentsDirectory / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905/Documents

Nota: En este último caso, tenga en cuenta el uso de stringByAppendingPathComponent que "concatena" Documentos para el camino, la adición de la barra

NSSearchPathForDirectoriesInDomains() siempre devuelve una matriz de cadenas, aunque en algunos casos elementos maggiornaza son uno solo. Si se mira de cerca la salida de paths , de hecho, se indica entre paréntesis, es decir, una matriz. En el primer caso se extrae el primer elemento [paths objectAtIndex:0] .

Recursos

delle applicazioni Mac è “virtuale”, per non dire fittizia. El objeto a través de NSBundle , en cambio, se accede a la carpeta de recursos de una aplicación, como usted sabe, la extensión .app las aplicaciones de Mac es "virtual", si no es ficticio. De hecho, se esconde una especie de "carpeta" con todos los recursos necesarios dentro de la propia aplicación, incluido el propio ejecutable! :)

1
2
3
4
5
/ / Aplicación
appFolderPath = [ [ NSBundle mainBundle ] resourcePath ] ; NSString * appFolderPath = [[ NSBundle mainBundle] resourcePath];
"appFolderPath = %@" , appFolderPath ) ; NSLog (@ "appFolderPath =% @", appFolderPath);

/ / = AppFolderPath / var/mobile/Applications/54A1A3C9-322E-4C23-B096-45869B0332A5/MyApp.app

Listar el contenido de una carpeta (navegando)

Gestión de archivos, administrada por el objeto NSFileManager , que se utiliza para realizar muchas operaciones útiles tales como:

  • Crear directorios y archivos
  • Copiar, mover, y "link" archivos y directorios
  • Compara archivos y directorios
  • Obtener el contenido del directorio
  • y más ...

Por ejemplo ...

1
2
3
4
5
6
7
8
9
10
11
/ / Lista de directorios
homePath = NSHomeDirectory ( ) ; NSString * NSHomeDirectory HOMEPATH = ();
fileManager = [ NSFileManager defaultManager ] ; NSFileManager FileManager * = [ NSFileManager defaultManager];
"La cartella %@ contiene = %@" , homePath, [ fileManager directoryContentsAtPath : homePath ] ) ; NSLog (@ "La carpeta contiene% @ =% @", HOMEPATH [directoryContentsAtPath FileManager: HOMEPATH]);

/ / El archivo / carpeta / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905 contiene = (
/ / Documentos,
/ / Biblioteca
/ / "MyApp.app"
/ / Tmp
/ /)

Prima

Con respecto a la información "usuario" puede tener:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/ / FullUserName
fullUserName = NSFullUserName ( ) ; NSString * NSFullUserName fullUserName = ();
"fullUserName = %@" , fullUserName ) ; NSLog (@ "fullUserName =% @", fullUserName);
/ / = FullUserName usuario móvil

/ / NSUserName
userName = NSUserName ( ) ; NSString * Nombre de usuario = NSUserName ();
"userName = %@" , userName ) ; NSLog (@ "nombre de usuario =% @", nombreUsuario);
/ / Nombre de usuario = móvil

/ / NSHomeDirectoryForUser
directoryForUser = NSHomeDirectoryForUser ( userName ) ; NSString * directoryForUser NSHomeDirectoryForUser = (nombre de usuario);
"directoryForUser = %@" , directoryForUser ) ; NSLog (@ "directoryForUser =% @", directoryForUser);
/ / = DirectoryForUser / var/mobile/Applications/DFD6AED2-6B14-4515-8DCD-2AF6F6C2E00C

Me voy a probar las "diferencias" entre el uso del simulador y el dispositivo.

Un comentario: "fragmento muy corto: el iPhone de Apple sistema de archivos"

  1. 10 de junio 2010 Noticias del blog en Meego: montar el sistema de archivos NTFS :

    [...] Fragmento muy corto: el iPhone de Apple sistema de archivos en Mac OS X y iPhone OS, se puede acceder fácil y directamente en el directorio - más importante - el sistema que son: Código Texto sin formato: NSHomeDirectory Devuelve la ruta al directorio home del usuario actual. Devuelve la ruta de NSHomeDirectoryForUser Dado un directorio home del usuario. Blog: undolog | leer más [...]

Deja un comentario

XHTML PERMISO TAG: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Dejar de SOPA