writable equivalent of "commonApplicationDataDirectory"


My application needs to read and write files to a directory of audio files that must be shared among users on the same computer.

I cannot use a subdirectory of the "commonApplicationDataDirectory" returned by File::getSpecialLocation() because it is read-only both on MacOS X and Windows, but I found that such a writable shared directory exists both on MacOS X on Windows, and I think that it would be a good idea to add that to the locations that can be obtained by File::getSpecialLocation ().

The writable path shared among users is:

"/Users/Shared" on MacOS X, at least since Leopard (10.5)

"C:\Users\Public\Documents" in Windows Vista and above

"C:\Documents And Settings\All Users\Documents" in XP and below

On Windows, the correct path can be obtained by calling the function SHGetFolderPath asking for the CSIDL_COMMON_DOCUMENTS path, as written here


As for the naming of such getSpecialLocation entry, maybe commonWritableApplicationDataDirectory? or userSharedApplicationDataDirectory? userSharedDocumentsDirectory? sharedDocumentsDirectory?


bump. no comments about this?


Yes, seems like a good idea, will do it when I get chance..