Hej Vad menar du med BSTR arrayer? Nja det verkar som du fattat mig rätt någorlunda rätt.. Då är problemet du behöver lösa att göra en parser som du sedan kan få att generera dina datastrukturer. Ok... Jag måste alltså parsa igenom strängen..BSTR av array syntax till "riktig array"
Jag undrar lite angående BSTR arrayer. Om en BSTR innehåller syntaxen till en två dimensionell array tex : "[ [ 1 , 2 ] , [ 3 , 4 ] ]".
Eftersom sättet att skriva arrayer bör vara microsoft standard, finns det då något sätt att översätta ovanstående BSTR array till en "riktig array" [2,2].
Saken är att jag vill undvika att gå igenom hela BSTR element för element och lägga väderna in i en ny array.
Har sökt på nätet men inte hittat något.
/MickeSv: BSTR av array syntax till "riktig array"
En BSTR är (ungefär) en struct som är en pekare till en unicodesträng (ej nödvändigtvis nollterminerad) samt ett heltal som säger hur lång strängen är.
Menar du en array av strängar?
Av ditt inlägg misstänker jag att du menar att du vill skapa en array av arrayer av heltal från en sträng. Är det korrekt? I så fall så får du snickara dig en parser för detta och göra det själv är jag rädd. Att komma åt parsern i C++-kompilatorn går inte.
/Andreas, som förmodligen har missförstått hela frågan.Sv:BSTR av array syntax till "riktig array"
Grejen är att jag utvecklar en OPC-server (OLE For Process Controll) och alla data som kommer in från olika styrsystem är en BSTR sträng. Om nu detta data är en array (1-3 dimensioner) i styrsystemet så kommer jag bara få en BSTR sträng av arrayen tex: num array: "[1,2],[3,2]". (jag får även info om antal dimensioner och element och data typ från annat håll..!!..)
För tillfället så parsar jag ut alla värden och lägger in dessa i en safearray. Grejen är att jag bara inte kan lägga in hela BSTR strängen i safearrayen. För värdena ska lätt kunna redovisas på en klient, och det är inte meningen att kliensidan ska behöva parsa igenom hela strängen för att ta få ut värden.
Jag vill undvika att parsa igenom BSTR strängen bara för att den kan även innehålla en string array tex. "["A","B"],["C","D"]". Och om strängarna i arrayen innehåller tex fnuttar ( " ) eller barckar ( [ ] ) etc.. så blir det så jäkla krångligt att parsa igenom och se vart värdet börjar och slutar.
Därför undrar jag om någon vet om det finns något sätt att enkelt översätta en BSTR sträng bestånede av en sträng av 1-3 dimensionella arrayer till "vanliga" arrayer.
Hoppas att jag beskrev problemet lite klarare denna gång.. Sv: BSTR av array syntax till "riktig array"
Jag skulle nog rekommendera boost.sprit (se http://spirit.sourceforge.net/distrib/spirit_1_8_2/libs/spirit/doc/quick_start.html för Quick Start).
Att skriva en egen ad hoc-parsers lockar ju inte. Se även början på artikeln ovan där han kort nämner andra möjligheter.
/AndreasSv:BSTR av array syntax till "riktig array"
Tack så mycket för hjälpen..
/Micke