Winamp & Shoutcast Forums

Winamp & Shoutcast Forums (http://forums.winamp.com/index.php)
-   NSIS Discussion (http://forums.winamp.com/forumdisplay.php?f=65)
-   -   parsing xml (http://forums.winamp.com/showthread.php?t=306625)

qwertymodo 22nd May 2009 01:01

parsing xml
 
I need to parse the contents of an xml file at runtime. Actually, I just need to parse the contents of a single line. The tag only exists once in the file, so I don't need to work down through nested nodes, just need to find the text in the file, preferably ignoring whitespace and newlines, as I can't be sure whether the newlines are form-feed only (as per xml spec) or windows' form-feed\newline combo and I don't know if there how many spaces, etc there are between things.

The line looks like this:

<AppStart workingdir="param1" cmd="param2">param3</AppStart>

or it might not have workingdir specified, so it might be:

<AppStart cmd="param1">param2</AppStart>

So I just need to get the parameters out of that line, regardless of where it is in the file. Any help?

qwertymodo 22nd May 2009 01:34

Basically, I'm looking for something similar to !searchparse except at runtime, i.e.

!searchparse '<AppStart ` UNPARSEDPARAM1 ` cmd="` PARAM2 `">` param3 `</AppStart>'

StrCmp ${UNPARSEDPARAM1} "" +2
!searchparse ${UNPARSEDPARAM1} 'workingdir="` PARAM1 `"'

just, replace !searchparse with a runtime alternative. I could figure out how to get just this line, probably with FileReadFromEnd, so I can treat the line as a string, I just need to parse it.

qwertymodo 22nd May 2009 07:24

Ok, so I've managed to get the line as a string and trim all whitespace and newline characters. So take the above line as a string stored as a variable, and I'm still looking for an easy alternative to !searchparse at runtime... I get the feeling it's going to somehow use WordFind, but I just don't understand the documentation for it :(


All times are GMT. The time now is 17:27.

Copyright © 1999 - 2010 Nullsoft. All Rights Reserved.