Altova Mailing List Archives>Archive Index >microsoft.public.xml Archive Home >Recent entries >Thread Prev - Parsing a generic data file [Thread Next] Re: Parsing a generic data fileTo: NULL Date: 12/14/2007 1:30:00 PM
"Jasper" <notaround@d...> wrote in message
news:2p-dnWHym_54YPzaRVnyvAA@p......
> Hi, Maybe this is off-topic, but perhaps you can help. I'm looking for
> ideas on how to parse a data file.
can't you create arrays of C++ structs or classes to hold this data? As for
parsing it, if you don't want to write your own parser there has to be an
abundance of libraries out there you could use out of the box, no?
Efficiency will vary but I can't see why any decent commercial product, if
not your own code, would not be *very* fast
I guess I'm not seeing why you would use XML or XML tools to intermediate
this process when the data is not coming at you in XML and you've given no
indication that you need to out it as XML for other processes to consume ...
?
> I dont know XML but I know it parses data in text format.
>
> I have a structured data file of the general form shown below. I dont have
> any definition of the data. Basically it looks like it is hierarchical,
> token/data pairs defined by brackets and square brackets.
>
> I would like to parse this out into some sort of data object(s) in C++ so
> that I can gain programmatic access to the variables.
>
> My app is C++ so the solution must be the same. Also it must be very
> lightweight and *very* fast as I must decode multiple pages in realtime.
>
> Would adapting an XML parser to do this be a possible solution?
>
> Any pointers/ideas/references/code snippets/observations appreciated.
>
> TIA
>
> Basic example showing data structure (whitespaces and carriage returns
> added by me for clarity).
>
> {
>
> "teacher":{
> "name":
> "Mr Borat",
> "age":
> "35",
> "Nationality":
> "Kazakhstan"},
>
>
> "Class":{
> "Semester":
> "Summer",
> "Room":
> null,
> "Subject":
> "Politics",
> "Notes":
> "We're happy, you happy?"},
>
> "Students":
> [
> {
> "Smith":
> [{"First Name":"Mary","sex":"Female"}],
> "Brown":
> [{"First Name":"John","sex":"Male"}],
> "Jackson":
> [{"First Name":"Jackie","sex":"Female"}]
> }
> ],
>
>
> "Grades":
> [
> {
> "Test":
>
> [{"grade":"A","points":68},{"grade":"B","points":25},{"grade":"C","points":15}],
> "Test":
>
> [{"grade":"C","points":2},{"grade":"B","points":29},{"grade":"A","points":55}],
> "Test":
>
> [{"grade":"C","points":2},{"grade":"A","points":72},{"grade":"A","points":65}]
> }
> ]
>
> }
>
>
>
>
>
>
>
>
>
>
>
>
| ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
