Hi
I am working on this topic since some time. My goal is to display the SD card file structure on a display:

This will not display the entire file structure but will allow navigation through the directory structure with two or more external buttons.
The file selection box is based on the m2tklib user interface library. The description for the m2tk file selection box is already online:
http://code.google.com/p/m2tklib/wiki/fileselectbox. Everything will be available with the next m2tklib release.
Together with the LiquidCrystal port of m2tklib, this file selection box is also available for character displays (without icons on the left side). A lot of LCD and OLED displays are supported by the combination of m2tklib and u8glib (see the device list here:
http://code.google.com/p/u8glib/wiki/device), but also GLCDv3 and m2tklib will work together.
After selection of a file, the full pathname is avilable within the Arduino:
http://code.google.com/p/m2tklib/wiki/mas#mas_GetPathFilename. The result can be used to open a file for reading or writing.
M2tklib and the mass storage subsystem (will be part of the next m2tklib) currently support the SD lib, SdFat lib and the Petit Fat File System lib.
Maybe you can specify your sd-card library and the intended display for a more precise answer. I can also offer a pre-release of m2tklib.
Oliver