pedrom
Goto Top

.csv oder .txt Datei in .xml implementieren

Hallo liebe Community,

ich habe das Problem, dass ich von .xml kaum eine Ahnung habe, jedoch ein Skript schreiben möchte, für ein Computerspiel, um optimale Entscheidungen treffen zu können.

Dabei gibt es Items, deren Preis sich täglich ändert. Diese habe ich soweit implementiert, dass sie tagesaktuell in einem .csv, .txt o.ä. gespeichert werden können.

Weiterhin gibt es ein Skript, das dann optimale Preise/Einkäufe berechnet. Dort sind dann Items mit statischen Preisen eingetragen. Das möchte ich jetzt aber automatisch durch meine txt Werte ersetzen.

Die Funktion sollte also ca. so aussehen:

[...]
<subroutine>

<Hier Datei einfügen, damit sie vom Programm gelesen und verarbeitet wird> (hier standen vorher die statischen Werte)

</subroutine>

Vorgestellt habe ich mir das so, dass man etwa einen Link einfügt, das verarbeitende Programm diesen öffnet und die Daten daraus verarbeitet.
Die Daten innerhalb der zu implementierenden Datei sind im komplett gleichen Format, wie sie vorher im Skript standen.

die einzelnen Elemente in der Zeile sind dann so etwas: minBuy="10" usw. ca. 10 solcher Befehle pro Item.


Vielen Dank für eure Hilfe!

Gruß
Pedro

Content-Key: 211793

Url: https://administrator.de/contentid/211793

Printed on: April 24, 2024 at 05:04 o'clock

Member: bytecounter
bytecounter Jul 18, 2013 at 08:34:43 (UTC)
Goto Top
Hallo,

also entweder habe ich die Frage mal wieder überlesen oder das ist ein typisches wer-macht-die-Arbeit-für-mich-Thema. Des Weiteren gehört das auch nicht in XML...

Wenn Du XML in CSV umwandeln möchtest, braucht es dazu ein Programm. Entweder gibt's da schon was fertiges - oder man schreibt es sich eben selber. Und dazu gibt es sogar schon für so ziemlich alle Programmiersprachen fertige Bibliotheken...

Solange Du uns also nicht sagst, mit welcher Programmier-/Scriptsprache Du das umsetzt, wird Dir auch keiner helfen können.
Und ein wenig Code ist in solchen Fällen auch oft hilfreich.

vg
Member: PedroM
PedroM Jul 18, 2013 at 15:52:25 (UTC)
Goto Top
Hallo,

ich denke du hast meine Frage falsch verstanden, da es nicht darum geht irgendwas zu konvertieren, sondern einem Programm zu sagen, dass es die xml Datei lesen soll und wenn es zu einem bestimmten Punkt kommt, Daten aus einer anderen Datei oeffnen und verarbeiten soll.

Programmiersprache: C#

Code:

<?xml version="1.0" encoding="utf-8"?>
<Game>

<SubRoutine SubRoutineName="FindePreise">
<!--Verarbeite Preise-->

<xi:include href="AHTest.csv"/> (funktioniert natuerlich nicht, war aber mein erster, zweiter und dritter Ansatz. Hier soll die Datei rein und die Daten daraus ausgelesen und verarbeitet werden)

</SubRoutine>

Ich wuerde nicht Fragen, wenn ich es selbst nicht stundenlang und mit google versucht haette, aber als Laie keine einfache Sache...

Vielen Dank
Member: colinardo
colinardo Jul 19, 2013 updated at 07:46:10 (UTC)
Goto Top
Hallo PedroM,
wie sieht die CSV-Datei genau aus, deine Info reicht hier nicht, poste mal einen Auschnitt daraus und bitte verwende TAGS um den hier einzustellen.

Mit C# sieht das ganze grob so aus(ohne CSV verarbeitung da noch zu wenig Info von Dir):
using System.XML;

private void bearbeiteXML() {
   XmlDocument xmlDoc = new XmlDocument();
   String xmlPath = @"E:\Tempfolder\Scripte\game.xml";  
   xmlDoc.Load(xmlPath);
         
   XmlNode targetNode = xmlDoc.SelectSingleNode("//SubRoutine[@SubRoutineName='FindePreise']");  
   // Mach hier was innerhalb von targetNode
   // z.B. ein neues Element erstellen
   XmlNode newNode = xmlDoc.CreateElement("Test");  
   targetNode.AppendChild(newNode);
   //-------------------------------------
   // speichere das XML-Dokument
   xmlDoc.Save(xmlPath);
}
Grüße Uwe
gelöste Beitrage bitte auch als solche markieren.Danke
Member: colinardo
colinardo Jul 26, 2013 at 12:05:34 (UTC)
Goto Top
passiert hier noch was, PedroM ?
Ansonsten den Beitrag bitte als gelöst markieren. Siehe dazu die FAQ
Danke.