kostenloser Webspace werbefrei: lima-city


[VB] Daten suche in XML Dateien

lima-cityForumSonstigesSpam und sonstiges Unvergütetes

  1. Autor dieses Themas

    c*****4

    Hallo liebe Epvpers Coders Community,
    da ich nicht weiterkomme und hier immer kompetente Hilfe bekommen habe, trage ich mal meine Frage vor.

    Ich arbeite zurzeit an einem neuen Projekt. Möchte ein Programm mit VB schreiben, welches 2 Suchfelder hat, 1. Suche nach Item ID u. 2. nach Item Name.
    Nach Erfolg der suche soll unten in Label Feld eine Info zu dem "Item" angegeben werden.
    Bspl.

    Suche Item ID 2932 , oder Item Wasser

    Wie sortiere ich aber die verschiedenen Items in eine XML Datei?
    Und wie baue ich es in meinen VB Code ein?

    Beispiel der XML Datei. [ am besten ist doch XML dafür oder ?]
    <?xml version="1.0" encoding="utf-8"?>
    <USR id="Holz">
      <info>ItemName : Holz
            ItemValuse : 224958</info>
      
    </USR>
    
    <USR id="Wasser">
      <info>
        ItemName : Wasser
        ItemValuse : 2249581
      </info>
    
    </USR>
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. coody24 schrieb:
    Hallo liebe Epvpers Coders Community,
    ...

    Hallo coody24,

    Dein Beitrag ist nicht nur im falschen Forum sondern auch in der falschen Community:megarofl:
    Wenn Du Dich bei elitepvpers.com anmeldest, dann kannst Du dort wahrscheinlich auch die Antwort lesen:
    http://www.elitepvpers.com/forum/epvp-coders/1167535-vb-daten-suche-xml-datenbanken.html

    Edit:
    Für kleine Datenmengen kann man die XML-Datei einfach in eine Liste einlesen und dann sortieren:
    XML:
    <?xml version="1.0" encoding="utf-8"?>
    <itemtable>
        <entry id="4" name="Holz" />
        <entry id="2" name="Wasser" />
    </itemtable>

    VB-Code:
    Imports VBTest
    
    Public Partial Class MainForm
    	
        Private Structure ItemDescriptor
            Dim id As Long
            Dim name As String
    		
            Sub New(id As Long, name As String)
                Me.id = id
                Me.name = name
            End Sub
        End Structure	
    	
        Private itemTable As List(Of ItemDescriptor)
    	
        Private shared Function compareItemDescriptorById( _
                d1 As ItemDescriptor, _
                d2 As ItemDescriptor) As Integer
    
            If d1.id > d2.id Then
                compareItemDescriptorById = 1
            ElseIf d2.id > d1.id Then
                compareItemDescriptorById = -1
            Else
                compareItemDescriptorById = 0
            End If
        End Function
    	
        Private shared Function compareItemDescriptorByName( _
                d1 As ItemDescriptor, d2 As ItemDescriptor) As Integer
    	compareItemDescriptorByName = d1.name.CompareTo(d2.name)
        end function
    	
        Private Sub btnClickMe_OnClick(sender As Object, e As EventArgs)
            Dim xmlDoc As Xml.XmlDocument= New Xml.XmlDocument()
            xmlDoc.Load("<Pfad zur Datei>\test.xml")
    		
            Dim xmlNode As Xml.XmlNode
    		
            For Each xmlNode In xmlDoc.DocumentElement.ChildNodes
                Dim attr As Xml.XmlAttributeCollection = xmlNode.Attributes
    
                itemTable.Add( _
                    New ItemDescriptor( _
                        CLng(attr.GetNamedItem("id").value), _
                        attr.GetNamedItem("name").value))
            Next
    		
            itemTable.Sort(AddressOf compareItemDescriptorByName)
    		
            Dim item As ItemDescriptor
            For Each item In itemTable
                MessageBox.Show(CStr(item.id), item.name)
            Next
    		
        End Sub
    	
        Public Sub New()
            Me.InitializeComponent()
            Me.itemTable = New List(Of ItemDescriptor)
        End Sub	
    End Class


    Beitrag zuletzt geändert: 22.5.2011 15:36:59 von darkpandemic
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!