Avatar billede robson Nybegynder
07. marts 2007 - 13:00

dataudtræk fra xml

Hej

Vha. en DTS pakke på en SQL Server 2000 forsøger jeg at trække data ud fra en xml fil.

xml filen ser således ud (lidt forenklet):
<?xml version="1.0" encoding="utf-8"?>
<nitf>
  <head>
    <meta name="subject" content="My subject" />
    <meta name="category" content="My category" />
  </head>
  <body>My body</body>
</nitf>

Jeg kan med nedenstående kode godt hente data fra <body>, men problemet er at tilgå <meta> - jeg har behov for at kunne spørge på <meta name="subject"> specifikt og hente content ud herfra. Kan det lade sig gøre?

Min kode:

'**********************************************************************
'  Visual Basic ActiveX Script
'************************************************************************

Function main()
  CONST strFilesPath = "C:\Dataimport\saxoxml"
  CONST adOpenKeyset = 1
  CONST adLockOptimistic = 3

  '*******************************************

  Dim objFSO
  Dim objFolder
  Dim objFilesColl
  Dim iFilesCount
  Dim objFile

  Dim objXMLDOM
  Dim objNodes
  Dim objNodeItem

  Dim objADORS
  Dim objADOCnn

  Dim strCurFileName

  'Create MSXML 4.0 DOM Object and initialize it
  Set objXMLDOM = CreateObject("MSXML2.DOMDocument")
  objXMLDOM.async = False
  objXMLDOM.validateOnParse = False

  'Get a list of files in the specified directory
  Set objFSO = CreateObject("Scripting.FileSystemObject")
  Set objFolder = objFSO.GetFolder(strFilesPath)
  Set objFilesColl = objFolder.Files

  For Each objFile in objFilesColl
    strCurFileName = strFilesPath & "\" & objFile.Name

    'Load the XML file
    objXMLDOM.load strCurFileName

    Set objNodes = objXMLDOM.selectNodes("/nitf")

    'Add records
    For Each objNodeItem In objNodes
      MsgBox(objNodeItem.selectSingleNode("head/meta").nodeTypedValue)
      MsgBox(objNodeItem.selectSingleNode("body").nodeTypedValue)
    Next
Next

Set objXMLDOM = Nothing
Set objFSO = Nothing
main = DTSTaskExecResult_Success

End Function
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester