Crafting .webloc Datei
Ich Schreibe ein Programm (für Mac OS X mit Objective-C) und ich erstellen eine Reihe von .webloc-Dateien programmgesteuert.
Den .webloc-Datei ist eine einfache Datei, die erstellt wird, nachdem Sie Sie per drag-n-drop eine URL aus Safari-Adressleiste, um einige Ordner.
Generell, ich brauche ein Konzept zu erstellen, Objekte in einem Dateisystem, die auf einen Ort im Web. So wie ich das verstehe .webloc-Dateien verwendet werden sollte für das auf Mac OS X.
So ist es möglich, dass das Handwerk ein .webloc-Datei mit einer gültigen url und einige Titel für Sie?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist wenig bekannt - aber es gibt auch einen einfachen plist-Datei-format für weblocs.
Beim erstellen von webloc Dateien, die Sie MÜSSEN NICHT speichern Sie mit Hilfe der Ressource-Methode die anderen drei Plakate beschreiben. Sie können auch schreiben Sie einfachen plist:
Den binäre Ressource-format ist immer noch im aktiven Gebrauch, und wenn Sie Lesen möchten, eine plist-Datei - dann sind Sie sicher, dass Sie Lesen müssen, beide Datei-Formate. Aber beim schreiben der Datei - verwenden Sie die plist-format - es ist viel einfacher.
Einen
.webloc
Datei nicht alles in der data-fork, sondern es speichert die URL bezieht sich auf eine Ressource in seiner resource fork. Sie sehen diese auf der Befehlszeile mit der DeRez(1) toolHier habe ich ihn auf einem
.webloc
- Datei, die ich gezogen aus meinem Safari-Adressleiste für diese Frage:Nur die Ressourcen, die wahrscheinlich benötigt werden, gibt es die
'url '
und'TEXT'
Ressourcen-ID 256, und diese wahrscheinlich nicht brauchen Ressource-Namen entweder. Die'urln'
Ressource könnte nützlich sein, wenn Sie wollen, geben Sie den Titel des Dokuments die URL zeigt auf, wie gut. Die'drag'
Ressource teilt dem system mit, dass dies eine clipping-Datei, aber ich bin mir nicht sicher, ob es braucht, um es in diesem Tag und Alter.Arbeiten mit Ressourcen und der ressourcenzweig von einer Datei, verwenden Sie die Ressource-Manager — eines der grundlegenden Stücke von Kohlenstoff, die geht zurück auf die original-Mac. Es gibt jedoch ein paar Kakao-Wrapper für den Ressourcen-Manager, wie Nathan Tag NDResourceFork.
'drag'
muss es sein. Die Ressource-Namen werden ignoriert; ziehen Sie einen link von einer NSTextView nicht produzieren..webloc
Dateien (mehr generisch, Internet location-Dateien) geschrieben werden, in einem format, dessen definition geht zurück auf Mac-OS 8.x. Es ist Ressourcen-basiert, abgeleitet aus dem clipping-format erhalten Sie, wenn Sie eine Datei erstellen, die aus gezogenen Objekte wie text oder Bilder.Die Ressourcen geschrieben werden
'url '
256 und'TEXT'
256, zu speichern, die die URL und Optional 'urln' 256, mit dem text im Zusammenhang mit der URL.'drag'
128 Punkte, um die anderen beiden (oder drei) Ressourcen.NTWeblocFile, Teil der Cocoatech Open-Source-framework CocoaTechFoundation (BSD-lizenziert), unterstützt das schreiben von Dateien von Objective-C Wenn Sie wollen, geben Sie einen Titel separat auf die URL, die Sie brauchen, um die Klasse ändern, also schreibt er etwas anderes als die URL in den
'urln'
Ressource.In Mac OS X 10.3 und höher, die URL ist auch geschrieben (kann auch geschrieben werden) in eine property-Liste in der Datei Daten-Gabel. Siehe die andere Antwort, wie das funktioniert...
Anderen Weg, um "web-Verknüpfung" ist
.url
Datei die hier schon genannt.Der Inhalt sieht wie (viel einfacher als plist-xml-basiert):
Hinweis: die Datei hat 3 Zeilen, die Letzte Zeile leer ist.
Mehr info auf .url-Datei-format
Verwendet er eine resource-fork-basierten binary-format.
Gültig workarounds:
Hier ist, wie Google Chrome funktioniert es: WriteURLToNewWebLocFileResourceFork
Diese hat die grundlegende Aufgabe, ohne dass eine Drittanbieter-Bibliotheken. (Achtung: minimaler Fehler überprüfen.)