2012-02-02 24 views
1

在我的iPhone應用程序,如何從文檔目錄中提取路徑組件直到我的文件名?

我想提取的路徑組件....

/Users/priyadarshanjoshi/Library/Application Support/iPhone Simulator/5.0/Applications/A2CD9285-62E9-4447-9945-5D8CE090FB3A/Documents/Wine_12.png 

我想提取

/Documents/Wine_12.png 

我寫這段代碼...

有沒有更簡單的方法來做同樣的事情?

NSString *[email protected]""; 
     BOOL append=NO; 
     for(NSString *get in [imagePath pathComponents]) 
     { 
      if([get isEqualToString:@"Documents"]) 
      { 
       append=YES; 
      } 
      if(append==YES) 
      { 
      relativePathImage1=[relativePathImage1 stringByAppendingPathComponent:get]; 
      } 
    } 
     NSLog(@"relativePathImage1 %@",relativePathImage1); 
+1

永遠不要讓你的個人信息在SO ... :) – DShah 2012-02-02 08:43:33

回答

2

爲什麼不幫助下面的功能?它會導致數組中的2個字符串在文檔之前和之後。然後,Yu可以使用文件後面的字符串並將文件添加到同一個文件中並使用它。

[strPath componentsSeparatedByString:@"Document"] 
+0

正確!但是,如果我會更貪婪,我可以得到的文件也...... !!意味着我得到兩個字符串/../../Documents和/Wine_15.png謝謝... – 2012-02-02 05:47:28

+0

不,原因是文檔每次不同之前的關鍵值..其他我沒有任何問題.. :) – Sarah 2012-02-02 05:49:23

1

的方法lastPathComponent必給你Wine_12.png

方法stringByDeletingLastPathComponent會給你/Users/priyadarshanjoshi/Library/Application Support/iPhone Simulator/5.0/Applications/A2CD9285-62E9-4447-9945-5D8CE090FB3A/Documents

你可以把第二個......的lastPathComponent ......然後合併。

3
NSString *fullPath = // Get the path to your image 
NSString *pathWithNoFileName = [fullPath stringByDeletingLastPathComponent]; 
NSString *myPath = [[pathWithNoFileName lastPathComponent] stringByAppendingPathComponent:[fullPath lastPathComponent]]; 
相關問題