Frage

Ich habe eine .plist-Datei, die wie folgt aussieht:

<plist version="1.0">
<array>
<dict>
    <key>name</key>
    <string>Alabama</string>
    <key>abreviation</key>
    <string>AL</string>
    <key>date</key>
    <string>1819</string>
    <key>population</key>
    <string>4,627,851</string>
    <key>capital</key>
    <string>Montgomery</string>
    <key>largestCity</key>
    <string>Birmingham</string>
</dict>
....
</array>
</plist>

Ich möchte mehr Informationen zu dem plist hinzufügen wie Motto und Spitznamen. Sie sind in diesem Format:

<nickname>Yellowhammer State</nickname>
<nickname>The Last Frontier</nickname>
<nickname>The Grand Canyon State</nickname>
<nickname>The Natural State</nickname>
<nickname>The Golden State</nickname>
<nickname>The Centennial State</nickname>
<nickname>The Constitution State</nickname>
<nickname>The First State</nickname>
<nickname>The Sunshine State</nickname>

Ich erwäge eine Suche zu tun und ersetzen, um mehr Informationen hinzuzufügen. Ich könnte auch einen Perl-Skript schreiben, um die Spitznamen zu lesen und sie in die plist hinzufügen.

Aber gibt es ein Textverarbeitungsprogramm, das mir über die Werte zu durchlaufen lassen würde und sie in der richtigen Stelle einfügen? Ich habe durch Textverarbeitungsprogramme / Redakteure suchen und nicht finden, was ich suche.

War es hilfreich?

Lösung

Das sieht wie ein Job für XSLT: xsltproc auf dem Mac oder Linux. (Oder Saxon, die XSLT unterstützt 2,0)

[Sie erwähnen nicht, wie die Spitznamen in der zweiten Datei zusammenpassen auf Werte in der ersten Datei: sie sind Sequenz in passender? ]

Andere Tipps

Als erstes würde ich empfehlen plist 1.1 erstellen, die Ihre Paar Namen Wert behandelt wie die verwandten Entitäten, die sie sind, zum Beispiel:

<key name="capital" value="Montgomery" />

oder

<key>capital <value>Montgomery</value></key>

Es scheint mir, dass mit ihnen die Art und Weise trennen Sie eine weitere Verarbeitung machen würden Sie schwieriger machen wollen.

Sie brauchen mehr Metainformationen in der Nähe der Spitzname für Sie die Zuordnung in den richtigen Zustand zu machen, wenn Sie für jede Einfügung aufgefordert werden möchten. machen die Spitznamen wie

<nickname state="AL">Yellowhammer State</nickname>

würden Sie alles, was Sie brauchen, um Ihre Daten einfach in der richtigen Stelle in jeder Sprache ein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top