Frage

So hat der USDA einige seltsame Datenbank der allgemeinen Ernährung Fakten über Lebensmittel, und auch natürlich werden wir es in unserer App für die Verwendung stehlen. Aber trotzdem das Format der Zeilen ist wie folgt aus:

~01001~^~0100~^~Butter, salted~^~BUTTER,WITH SALT~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87
~01002~^~0100~^~Butter, whipped, with salt~^~BUTTER,WHIPPED,WITH SALT~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87
~01003~^~0100~^~Butter oil, anhydrous~^~BUTTER OIL,ANHYDROUS~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87
~01004~^~0100~^~Cheese, blue~^~CHEESE,BLUE~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87

mit denen ungerade ~ und ^ die Werte zu trennen, es fehlt auch eine Kopfzeile, aber das ist ok, das kann ich herausfinden, von den anderen Sachen auf ihrer Website: http://www.ars.usda.gov/Services/docs.htm?docid=8964

Jede mögliche Hilfe würde groß sein! Wenn es darauf ankommt sind wir eine offene / freie API Ruby machen diese Daten abzufragen.

Außerdem habe ich eine harte Zeit aufwirft diese Frage, damit ich es ein Community Wiki gemacht haben, damit wir alle Tonhöhe in!

War es hilfreich?

Lösung

^ erscheint ein Feldtrennzeichen und ~ einen String-Begrenzer zu sein. Normalerweise würde ich erwarten , und "in diesen Rollen zu sehen, aber die Wahl der sehr seltenen Zeichen bedeuten, dass ein String wie

Cheese, Bleu

nicht alle trippy mit dem String-Parser erhalten.

Andere Tipps

Das sieht wie ein sehr Standard CSV (Comma Separated Value) Datei, mit Ausnahme des Feldtrennzeichen wurde von , zu ^ und Anführungszeichen geändert von " zu ~

Leider bin ich mit Ruby-nicht vertraut, die Bibliothek verwenden zu empfehlen, aber in Perl gibt es eine Schiffsladung von Standard CPAN Module von denen die besten können Sie sowohl Feldtrenn und Anführungszeichen eines CSV-Leser konfigurieren ... ich würde erwarten, Rubin sollte auch etwas ähnliches hat - wenn ja, haben Sie Glück

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