I would seem quite like Soong to have Data be able to recharchge from various sources. I can see him drawing energy from various energy, subspace and "whatever" fields surrounding him. He should be able to convert foot to energy (even if not techically nessecary, why waste the potential energy?), and since we have seen his head-interface be pretty versatile..I suspect you could charge him that way if nessecary.
But may be he runs on energizer batteries? "Your android with regular batteries....and here with energizer..he runs, and runs, and runs, and runs, and runs....." ;-)) ROFL