More files implies more overhead. What I would do is to store the file cursor index (aka the value returned by
position()) every time I advance one line.
This way, when you have to reopen, you don't have to start again from the beginning; but from the position previously saved.
About energy saving... it would be better if you power the Arduino directly with 3.3v. The lower amount of voltage regulators, the better.
If you get rid of all regulators and built-in LEDs, the Arduino in the deepest sleep mode available, will actually consume currents in the microamps scale
The SD card... basically the same thing: one second after the last interaction and it goes to sleep as well (also it's the only moment you can remove it or "hot-unplug" without causing any damage).
How much it takes when reading/writing? The Arduino microcontroller alone with the oscillator spooled up, I think like 12 mA; same with the SD card is active.
When both are asleep, maybe like a 1/8 of a mA.
I might be wrong with those values, but otherwise they are pretty close.