Solved

how do I edit office 2007 word xml files programatically

Posted on 2007-11-30
2
838 Views
Last Modified: 2012-06-22
If you take the new *.docx files that MSWord 2007 produces when it saves, and open it up in WinZip, you can see all the of xml files that make up the "dna" of the word file.  One of the xml files is called 'document.xml' that stores all of the text context in the word doc.

So here is the question.. if you make a simple word doc, for example a doc that only contains the text "Hello World", you can easily find the tag the contains this text in the 'document.xml' thats part of the docx package.  However, when I tried to change this tag in a text editor (to, lets say "Goodbye, World" , replace the original 'document.xml' with the modified one, and re-zip the package, word thinks something is corrupted.

I must be missing something because I know that the whole point of using XML as the source for a document is that other programing languages can edit the XML directly and read/modify/create word docs.  I can't even get this to work when editing it manually in a text editor!

I suspect that the zipping step isnt correct, or maybe I have to update another xml file in the package to accept the modified document.xml file?  I would like to learn how to edit MSOffice documents by editing the underlying XML... what am I missing?  Ill give points for an answer that explains why my zipping didnt work rather than answers that are just links to general information about open xml for office.  I feel like I read them all and couldnt find the answer!

thanks, experts
-md

0
Comment
Question by:meuedyn
2 Comments
 
LVL 3

Accepted Solution

by:
wiglack earned 500 total points
ID: 20385720
I made a docx file that had the text Hello World!

I used Winrar.  I extracted the document.xml file.  I then opened the document.xml file in notepad and added EDITED!.  I saved the file in notepad.  Then I deleted document.xml in winrar.  I then added the new document.xml that I edited earlier.
When I opened Word2007 I saw Hello World! EDITED

Since I don't use Winzip I can't see if there is a problem with winzip.  Make sure you aren't changing the archive to zip.  It should work the same way.
0
 

Author Comment

by:meuedyn
ID: 20397310
I think the problem was in WinZip making an archive.  I discovered that using Internet Explorer to view/edit xml files works better and preserves the internal folder structure!

thanks wiglack
-md
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Recently Microsoft released a brand new function called CONCAT. It's supposed to replace its predecessor CONCATENATE. But how does it work? And what's new? In this article, we take a closer look at all of this - we even included an exercise file for…
This article will guide you to convert a grid from a picture into Excel format using Microsoft OneNote and no other 3rd party application.
The viewer will learn how to simulate a series of coin tosses with the rand() function and learn how to make these “tosses” depend on a predetermined probability. Flipping Coins in Excel: Enter =RAND() into cell A2: Recalculate the random variable…
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now