2012-02-18 54 views
1

我見過很多類似的問題在這裏,但他們沒有解決我的情況:在SD卡Android:如何獲得絕對文件路徑使用基本路徑和相對與「..」?

我在一些目錄中創建的播放列表文件(假設/Music/Playlists/playlist.m3u)。 用WMP播放列表創建我得到像下面文件的路徑: ../Music/my_music_file.mp3

總結起來,我有:

  • 基本路徑/音樂/播放列表/
  • 相對路徑../my_music_file.mp3
  • 我想輕鬆獲得/Music/my_music_file.mp3

的路徑我怎麼能輕易地從類似塔獲得文件的絕對路徑T'

+0

發表您的答案回答你的問題,而不是作爲一個編輯它。 – 2012-02-19 13:59:52

回答

0

這就是我想出了一個簡單的解決方案,萬一有人得到了同樣的問題

if (path.startsWith("../")) { 
    File dir = new File(base.getPath()); 
    while (path.startsWith("../")) { 
     path = path.substring(3, path.length()); 
     dir = dir.getParentFile(); 
    } 
    path = new File(dir, path).getPath(); 
}