As some of you may know, I had the opportunity to work in a law firm last week. It was an interesting week and it gave me a chance to see what it is like to work in Central, HK.
During my stay in the law firm, I had to write up a bunch of Word documents. It was only when I was about 90% done with my work that I realized that I was working in MS Office 2007 (and hence, in *.docx) while the rest of the office was working with MS Office 2000 (*.doc). With over 10 documents to convert, I was daunted at the fact that I would have to manually convert each file.
But then I remembered my work in Grksm to Unicode and Project Gibson! All was not lost. I fired up Vim and made a few changes to my existing Python script, and voila! I had an instant docx <-> doc batch converter.
Now, because the Python script takes a lot of setting up, I took the opportunity to whip up a quick little command-line C# exe that does the same thing. You can read more about it and download the project source file/executable below.
Description:
This is a command-line executable program, so it will have to be used from the command line (surprise!)
In order for this program to work, you must have Microsoft Word 2007 (or later). I know, its kind of stupid, but this is really intended for cases where you personally wrote a bunch of docx files, but you need to send them off as doc to someone else.
When the program executes, it will look in a particular source directory for docx files. Then, it uses Word to re-save each docx file as Microsoft 2000 doc file. The converted files will be re-saved in a new save directory.
Usage:
The program can take at most two arguments:
Docx2Doc.exe [source directory] [save directory]
By default, the source directory will be the current directory where the program Docx2Doc.exe is located
By default, the save directory will be a new folder called “converted” created in the current directory where the program Docx2Doc.exe is located
When specified, the source directory must specify the path to an existing directory. If the directory does not exist then the program will exit.
When specified, the save directory does not have to point to an existing directory. If the directory does not exist then the program will try to make it.
Download:
Both the code and the executable is licensed under the BSD license.

7 Comments
You know if you made a website that asked users to upload docx files to convert to doc files- that would be really cool and useful!
@Derek My web-programming-fu is relatively weak, lol. Plus, there are a few websites out there that already do it like: http://www.docx2doc.com/. Hell, I wonder if u can gmail it to urself and let google docs handle the conversion…who knows?
I just converted 176 .docx files to .doc and I’m uploading the files to Google Docs using Google’s Documents List Uploader as I type. Thank you so much!
@Erik
Glad to be of service, cheers!
Hi,
This is really useful and seems pretty straightforward to use as well… Can you have like a bunch of docx and doc files together and you just want to convert the docx files to doc. Does it handle this scenario? I ask because it seems to go in a hanging mode, or I am doing something wrong
Cheers,
Sayali
If you need it to work badly I could try digging through the source. Let me know
THANK YOU SO MUCH! I can’t believe it! It felt good to use the old command line again.
I just converted 453 documents.
I AM a Happy Camper!
Michelle