Sehr kurze Auszug: Apple iPhone Dateisystem

Sowohl die Mac OS X und iPhone OS, kann man einfach und direkt Zugriff auf das Verzeichnis - ganz wichtig - das System, das sind:

1
2
3
NSHomeDirectory Gibt den Pfad zum aktuellen Benutzer-Verzeichnis.
Gibt den Pfad zu einem gegebenen Basisverzeichnis des Benutzers NSHomeDirectoryForUser.
NSTemporaryDirectory Gibt den Pfad des temporären Verzeichnisses für den aktuellen Benutzer.

Hier ist der Code benötigt, um sie zu benutzen:

1
2
3
4
5
6
7
8
9
10
11
/ / Hauptverzeichnis
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

Hinweis: Sie haben bemerkt, Linie 4, der Aufruf NSUserName() , die "current user" zurück

Es gibt also eine Reihe von anderen "Ordner", die wir zugreifen können. Diese können durch Aufruf der Funktion erhalten NSSearchPathForDirectoriesInDomains() übergeben als Eingänge eine Reihe von Konstanten. Zum Beispiel können wir den Ordner Dokumente auf diese Weise zu erhalten:

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

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

/ / Ordner Dokumente
documentsPath = [ paths objectAtIndex : 0 ] ; NSString * DokumentenPfad = [Wege objectAtIndex: 0];
"documentsPath = %@" , documentsPath ) ; NSLog (@ "DokumentenPfad =% @", DokumentenPfad);

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

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

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

Hinweis: In diesem letzten Fall, beachten Sie die Verwendung von stringByAppendingPathComponent , dass "verkettet" Documents auf den Weg, den Schrägstrich hinzufügen

NSSearchPathForDirectoriesInDomains() liefert immer ein Array von Strings, obwohl in Fällen maggiornaza Elemente nur eins sind. Wenn Sie genau die Ausgabe aussehen paths in der Tat, ist in Klammern angegeben, dh ein Array. Im ersten Fall ist mit dem ersten Element extrahiert [paths objectAtIndex:0] .

Ressourcen

delle applicazioni Mac è “virtuale”, per non dire fittizia. Das Objekt durch NSBundle , stattdessen greifen wir auf die Ressourcen-Ordner von einer Anwendung, wie Sie wissen, die Erweiterung .app Mac-Anwendungen ist "virtuell", wenn nicht fiktiv. Tatsächlich verbirgt sie eine Art "Ordner" mit allen notwendigen Ressourcen in der Anwendung selbst, einschließlich der ausführbaren Datei selbst! :)

1
2
3
4
5
/ / Application
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

Auflisten des Inhalts eines Ordners (Browsing)

Die File Management, durch das Objekt verwaltet NSFileManager , verwendet, um viele nützliche Operationen durchzuführen:

  • Erstellen von Verzeichnissen und Dateien
  • Kopieren, Verschieben und "link" Dateien und Verzeichnisse
  • Vergleichen von Dateien und Verzeichnissen
  • Getting Inhalt des Verzeichnisses
  • und mehr ...

Zum Beispiel ...

1
2
3
4
5
6
7
8
9
10
11
/ / Verzeichnis
homePath = NSHomeDirectory ( ) ; NSString * NSHomeDirectory HOMEPATH = ();
fileManager = [ NSFileManager defaultManager ] ; NSFileManager FileManager * = [ NSFileManager defaultManager];
"La cartella %@ contiene = %@" , homePath, [ fileManager directoryContentsAtPath : homePath ] ) ; NSLog (@ "Der Ordner enthält% @ =% @", HOMEPATH, [FileManager directoryContentsAtPath: HOMEPATH]);

/ / Der Ordner / var/mobile/Applications/C7B94C13-DCEC-40CD-942F-93FD302BF905 / contains = (
/ / Dokumente,
/ / Library
/ / "MyApp.app"
/ / Tmp
/ /)

Bonus

Im Hinblick auf die Informationen "user" können:

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

/ / NSUserName
userName = NSUserName ( ) ; NSString * Benutzername = NSUserName ();
"userName = %@" , userName ) ; NSLog (@ "username =% @", username);
/ / UserName = mobile

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

Ich überlasse es Ihnen, die "Unterschiede" zwischen der Verwendung des Simulators und das Gerät ausprobieren.

Ein Kommentar: "Sehr kurze Auszug: Apple iPhone Dateisystem"

  1. 10. Juni 2010 Neues aus dem Blog auf Meego: mount das NTFS-Dateisystem :

    [...] Sehr kurze Auszug: Apple iPhone-Dateisystem auf Mac OS X und iPhone OS, kann man einfach und direkt Zugriff auf das Verzeichnis - ganz wichtig - das System, das sind: PLAIN TEXT CODE: NSHomeDirectory Gibt den Pfad zum aktuellen Benutzer-Verzeichnis. Gibt den Pfad zu einem gegebenen Basisverzeichnis des Benutzers NSHomeDirectoryForUser. Blog: undolog | Weiterlesen [...]

Hinterlasse einen Kommentar

XHTML TAG PERMIT: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERTION CODE:
 <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 


Stoppen SOPA