Pywallet
Pywallet is a python utility that dumps addresses and private keys from a Bitcoin-QT or bitcoind wallet.dat file. The script also imports private keys into the wallet.dat file.
Included since version 0.6.0 of Bitcoin-QT and bitcoind, the importprivkey command makes pywallet's import feature unnecessary. It is advised to shut down any program that is accessing the wallet.dat file and make a backup before running pywallet to avoid any potential for corruption.