SD.open() filepath only accepts 12 characters?

When I used
File dataFile = SD.open(filepath, FILE_WRITE);

it only writes to the SD card if the filepath < 12 characters total

Is there a way around this, or is there something wrong?

SD.h only supports DOS style 8.3 names. A path can be longer than 12 characters but each segment must be a 8.3 name.

See SD - Arduino Reference

8.3 would add to 12.

Thanks very much