android - Renaming directory gives positive result code, but didn't rename -
i know it's cosmetic below code should rename directory doesn't. difference capitalisation - afaik android case sensitive when comes filenames. linux too. rename gives true result, indicating operation successful. directory in question not renamed, , still has 2 capital d's. have used same code rename /deaddropdroid /.deaddropdroid , works fine. every time run below code log says "success".
oldbasepath = new file (environment.getexternalstoragedirectory()+ "/.deaddropdroid/"); if (oldbasepath.exists()) { if (oldbasepath.renameto(new file(environment.getexternalstoragedirectory()+ "/.deaddropdroid/"))) log.v(tag, "rename success."); else log.v(tag, "rename fail."); }
have @ this answer similar question. key content is
by default, sd card formatted fat, preserves case case insensitive.
i did checks , can confirm mentioned file methods work 'case insensitive' on sd card. can not check oldbasepath.exists() ist return trueif lowercase directory version exists instead of uppercase version. have read directory content , compare file/directory names received pattern.
renaming 2 step approach (via temp file), e.g
.deaddropdroid -> .deaddropdroid_tmp -> .deaddropdroid
Comments
Post a Comment