• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Property List Values

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Hallo liebe Freunde.


Ich möchte gerne einige Informationen einer Property List auswerten.
Das Ding:
Ich habe in einem Ordner Dateien, die z.B.: "p-mff3ptClo-LOW" heißen.
Und in einer Property List sind die dazugehörigen Namen hinterlegt.

Ich möchte also in der Property List nach einem Value suchen und dann alle Daten des dazugehörigen Childs auslesen.

Verständlich? :-D

Ich möchte gerne alle Dateien in diesem Ordner als Liste in 'nem Dialogfeld angezeigt werden. Aber halt nicht als z.B. "p-mff3ptClo-LOW" sondern eben als "7 Liter SST Wasserrakete".

(Foto der offenen Plist im Anhang)

Wäre toll, wenn Ihr mir helfen könntet.

Gruß
Mini-Leo
 

Anhänge

  • Bild 3.jpg
    Bild 3.jpg
    48,4 KB · Aufrufe: 103

schnydi

James Grieve
Registriert
08.01.06
Beiträge
137
Hallo MiniLeopard

Es gibt grundsätzlich zwei Möglichkeiten plist Dateien mittels eines AppleScripts zu schreiben bzw. zu lesen. Die eine über "defaults write" und "defaults read" (Beispiel 1), oder über "System Events" (Beispiel 2).

Ganz klar ersteres ist vorzuziehen, ist aber deutlich aufwendiger zu erstellen, dafür funktioniert es zuverlässiger. Die befehle findest du wenn du im Terminal "man 'defaults'" eintippst.
Die deutlich einfachere Methode ist über "System Events". Die dafür benötigen Befehle findest du unter "Scripteditor -> Menü: Fenster -> Bibliothek -> System Events -> Property List Suite". Für weniger erfahrene Benutzer ist wohl diese Methode geeigneter.

Die unten gezeigten Beispiele sind CodeSnipplets aus einem Script von mir, dass heisst sie sind also nicht direkt für dich anwendbar. Im ersten Beispiel wird property list item angelegt, im zweitem Beispiel ein prperty list item mittels "System Events" ausgelesen.

Viel Spass beim pröbeln! :)

Beispiel 1
Code:
property prefName : "com.cine4mac.cinemac.cinema"
set myUserName to (do shell script "whoami")
set PLFA to "/Users/" & myUserName & "/Library/Preferences/" & prefName
do shell script ("defaults write " & PLFA & "  '<dict><key>cinemaIntro</key><string>" & cinemaIntro & "</string><key>cinemaDriver</key><string>" & cinemaDriver & "</string></dict>'")

Beispiel 2
Code:
set myUserName to (do shell script "whoami")
set PLFA to "/Users/" & myUserName & "/Library/Preferences/" & prefName
tell application "System Events"
	set PLF to property list file (PLFA & ".plist")
	set buttonsVisible to value of property list item "breakButtons" of property list item "break" of PLF
end tell