1. 程式人生 > >[iOS] 從url中獲取檔名以及字尾

[iOS] 從url中獲取檔名以及字尾

//這裡有一個模擬器沙盒路徑(完整路徑)

NSString* [email protected]"/Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books/2013_50.zip";

對路徑擷取的9種操作

    NSLog(@"1=%@",[index lastPathComponent]); //從路徑中獲得完整的檔名(帶字尾) 
    NSLog(@"2=%@",[index stringByDeletingLastPathComponent]); //
    NSLog(@"3=%@",[index pathExtension]);  //從路徑中獲得完整的檔名不帶'.')  
    NSLog(@"4=%@",[index stringByDeletingPathExtension]);//路徑”標準化“
    NSLog(@"5=%@",[index stringByAbbreviatingWithTildeInPath]);//通過把波浪號替換為當前使用者的主目錄,來把2013_50.zip
轉換為擴充套件的絕對路徑
    NSLog(@"6=%@",[index stringByExpandingTildeInPath]);
    NSLog(@"7=%@",[index stringByStandardizingPath]); //返回標準格式路徑
    NSLog(@"8=%@",[index stringByResolvingSymlinksInPath]);
    NSLog(@"9=%@",[[index lastPathComponent] stringByDeletingPathExtension]); //獲取檔名字

對應結果

1= 2013_50.zip

2= /Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books

3= zip

4= /Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books/2013_50

5= ~/Documents/DownLoad/books/2013_50.zip

6= /Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books/2013_50.zip

7= /Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books/2013_50.zip

8= /Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-AF97-4610-AF1C-B6B4157D1D92/Documents/DownLoad/books/2013_50.zip

9= 2013_50

還有其他的一些檔案操作
+ (NSString *)pathWithComponents(NSArray *)components
根據components中的元素來構建路徑.
- (NSArray *)pathComponents
解析路徑,返回構成路徑的各個部分.
- (NSString *)lastPathComponent
提取路徑中的最後一個組成部分
- (NSString *)pathExtension
從路徑中最後一個組成部分中提取副檔名

- (NSString *)stringByAppendingPathComponent(NSString*)path
將path新增到現有路徑末尾

- (NSString *)stringByAppendingPathExtension(NSString *)ext

將指定的副檔名新增到現有路徑的最後一個組成部分上
- (NSString *)stringByDeletingLastPathComponent
刪除路徑中的最後一個組成部分
- (NSString *)stringByDeletingPathExtension
從檔案的最後一部分刪除副檔名
- (NSString *)stringByExpandingTildeInPath
將路徑中的代字元擴充套件成使用者主目錄(~)或指定使用者的主目錄(~user)
- (NSString *)stringByResolvingSymlinksInPath
嘗試解析路徑中的符號連結
- (NSString *)stringByStandardizingPath
解析路徑中的~,(..)父目錄,(.)當前目錄和符號連結來標準化路徑.

常用的路徑工具函式:
NSString * NSUserName (void);
返回當前使用者的登入名
NSString * NSFullUserName (void);
返回當前使用者的完整使用者名稱
NSString * NSHomeDirectory (void);
返回當前使用者主目錄的路徑
NSString * NSHomeDirectoryForUser ( NSString *userName)
返回使用者userName的主目錄

NSString * NSTemporaryDirectory (void);
返回可用於建立臨時檔案的路徑目錄

NSArray * NSSearchPathForDirectoriesInDomains (
   NSSearchPathDirectory directory,
   NSSearchPathDomainMask domainMask,
   BOOL expandTilde
);
使用者查詢特定的目錄,如: NSDocumentationDirectory, NSUserDirectory等等


複製檔案和使用NSProcessInfo類

常用的NSProcessInfo類

+ (NSProcessInfo *)processInfo
返回當前程序資訊

- (NSArray *)arguments
以NSString物件數字的形式返回當前程序的引數

- (NSDictionary *)environment
返回變數/值對字典,以描述當前的環境變數(比如PATH等等)

- (int)processIdentifier
返回程序PID

- (NSString *)processName
返回當前正在執行的程序名稱

- (NSString *)globallyUniqueString
每次呼叫該方法時,都會返回不同的單值字串,可以生成臨時檔名

- (NSString *)hostName
返回主機系統名

- (NSUInteger)operatingSystem
返回表示作業系統的數字

- (NSString *)operatingSystemName
返回作業系統的名稱

- (NSString *)operatingSystemVersionString
返回作業系統版本

相關推薦

[iOS] url獲取檔名以及字尾

//這裡有一個模擬器沙盒路徑(完整路徑) NSString* [email protected]"/Users/junzoo/Library/Application Support/iPhone Simulator/7.0.3/Applications/63925F20-

android 資源獲取陣列以及ArrayAdapter

原文轉自: 除了在Java程式碼中定義陣列,Android還提供了在資源中定義陣列,然後在Java程式碼中解析資源,從而獲取陣列的方法。實際開發中,推薦將資料存放在資原始檔中,以實現程式的邏輯程式碼與資料分離,便於專案的管理,儘量減少對Java程式碼的修改。 在資源中

JavaScripturl獲取引數 / js get url parameter

問題描述:如圖,我想從一個url中 獲取引數,並且用js來實現 js程式碼: functiongetParameterByName(name, url) {     if (!url) url

Spark StreamingKafka獲取數據,並進行實時單詞統計,統計URL出現的次數

scrip 發送消息 rip mark 3.2 umt 過程 bject ttr 1、創建Maven項目 創建的過程參考:http://blog.csdn.net/tototuzuoquan/article/details/74571374 2、啟動Kafka A:安裝ka

Java檔案路徑獲取檔名的幾種方法

Java從檔案路徑中獲取檔名的幾種方法 舉例:String fName =” G:\Java_Source\navigation_tigra_menu\demo1\img\lev1_arrow.gif ” 方法一: ? View Code 

ios --轉載-URL擷取所包含的引數,並且以字典的形式返回和引數字典轉URL

- (NSString *)keyValueStringWithDict:(NSDictionary *)dict { if (dict == nil) { return nil; } NSMutableString *string = [NSMutableStr

Java-讀取某個目錄下所有檔案、資料夾和3種檔案路徑獲取檔名的方法

1 讀取某個目錄下所有檔案、資料夾 public static ArrayList<String> getFiles(String path) { ArrayList<Str

Spark StreamingKafka獲取資料,並進行實時單詞統計,統計URL出現的次數

1、建立Maven專案 2、啟動Kafka 3、編寫Pom檔案 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.or

url提取檔案的副檔名

1.使用的函式 1.1解析url的函式 parse_url()返回一個關聯陣列,此陣列中的鍵有 ◦ scheme - 如 http  ◦ host   ◦ port   ◦ user   ◦ pass   ◦ path   ◦ query - 在問號 ? 之後   ◦ fr

cocos2dx載入圖片資源的方法,和記憶體獲取已經載入的圖片資源的方法 以及釋放問題

遊戲中通常需要將常用的資源如:聲音,圖片,plist檔案,提前載入進記憶體,以加快遊戲的流暢度 1.預載入聲音: SimpleAudioEngine::getInstance()->preloadBackgroundMusic("boom.mp3"); 載入之後就可以

超時時間已到。超時時間已到,但是尚未獲取連接。出現這種情況可能是因為所有池連接均在使用,並且達到了最大池大小。

intel weight 關閉 雙擊 itl 手動 瀏覽器 默認 取數據 超時時間已到。超時時間已到,但是尚未從池中獲取連接。出現這種情況可能是因為所有池連接均在使用,並且達到了最大池大小。 解決辦法 1.在代碼裏面,把未關閉的連接關閉 2.擴大共享池,方法如下:

Django如何Model獲取字段名稱——verbose_name

blog color 學習 url post 定義 ole app war 一、背景 CRM項目重新總結一下,重寫之前的項目發現有不少知識點已經忘記,所以特此來重新總結一下一便後續能夠回憶起 二、代碼分析 1. 核心代碼 from django.conf.urls imp

apache環境下解決restful認證無法header獲取Authorization引數 [ 技術分享 ]

  rest介面採用HttpBearerAuth認證方式: public function behaviors() { return ArrayHelper::merge( parent::behaviors(), [ 'authentica

hive獲取資料

MySQL中獲取資料 public RestMsg<Object> getZhen( HttpServletRequest request) { RestMsg<Object> rm = new RestMsg<Object>();

Android 根據伺服器獲取的rgb值實現動態改變圓角加框的Imageview 的背景色

先上圖,效果圖如上。 本來考慮用facebook的SimpleDraweeView 來實現圓角加框的,但並非所有的圖片分支部分都可以實現圓角,目前只有佔位圖片和實際圖片可以實現圓角。 後來使用自定義的的控制元件RoundImageView來實現圓角加框,那麼問題來了。

【hive】url提取需要的部分字串

本人菜鳥一隻,如果有什麼說錯的地方還請大家批評指出!! 事情是這樣的,hive的A表中,有url這樣的一個欄位,我想要提取這個欄位中的某一部分(這不就是擷取字串嘛)。但是substring肯定是滿足不了我的需求的,自己寫hive的udf也不太現實(用最簡單的方式完成任務,才會讓後來的維護變得更加

Java基礎-----Excel獲取資料生成shell指令碼

前言 java讀取Excel的驅動包: 連結:https://pan.baidu.com/s/1ejCR9sS2OUmttFYpQnJkKQ 提取碼:58rm 實現1: 從Excel中讀取表名,由於每個欄位會對應一個表名,故讀取的某列會有若干個連續的表名出現,所以用set集合

Spring+Quartz 資料庫獲取定時任務和定時時間,動態實現對定時任務的增刪改查

本文轉載自部落格:http://blog.csdn.net/wwkms/article/details/48851005 ----------------------------------------------------------------------------------------

網路獲取圖片進行自動輪播

MainActivity package com.example.lunbotu2; import android.annotation.SuppressLint; import android.os.Handler; import android.os.Message; impor

thymeleaf和freemarker物件獲取時間並格式化,同時非空判斷

thymeleaf,freemarker從物件中獲取時間並格式化,同時非空判斷 freemarker物件非空判斷:${(creditInformationDO.delFlag)!} freemarker從物件中獲取時間並格式化:${(creditInformationD