asp.net - Manipulating Word 2007 Document XML in C# -


i trying manipulate xml of word 2007 document in c#. have managed find , manipulate node want can't seem figure out how save back. here trying:

// open document  memorystream package pkgfile = package.open(memorystream, filemode.open, fileaccess.readwrite); packagerelationshipcollection pkgrcofficedocument = pkgfile.getrelationshipsbytype(strrelroot);  foreach (packagerelationship pkgr in pkgrcofficedocument) {     if (pkgr.sourceuri.originalstring == "/")     {         uri uridata = new uri("/word/document.xml", urikind.relative);          packagepart pkgprtdata = pkgfile.getpart(uridata);          xmldocument doc = new xmldocument();         doc.load(pkgprtdata.getstream());          nametable nt = new nametable();         xmlnamespacemanager nsmanager = new xmlnamespacemanager(nt);         nsmanager.addnamespace("w", nsuri);          xmlnodelist nodes = doc.selectnodes("//w:body/w:p/w:r/w:t", nsmanager);          foreach (xmlnode node in nodes)         {             if (node.innertext == "{{texttochange}}")             {                 node.innertext = "success";             }         }           if (pkgfile.partexists(uridata))         {             // delete template "/customxml/item1.xml" part             pkgfile.deletepart(uridata);         }         packagepart newpkgprtdata = pkgfile.createpart(uridata, "application/xml");         streamwriter partwrtr = new streamwriter(newpkgprtdata.getstream(filemode.create, fileaccess.write));          doc.save(partwrtr);         partwrtr.close();     } }     pkgfile.close(); 

i error 'memory stream not expandable'. ideas?

i recommend use open xml sdk instead of hacking format yourself.


Comments

Popular posts from this blog

java - SNMP4J General Variable Binding Error -

windows - Python Service Installation - "Could not find PythonClass entry" -

Determine if a XmlNode is empty or null in C#? -