Object-C,檔案路徑API
犀利吐槽
1.同樣都是“檔案和目錄操作",java中,就用java.util.File一個類,就封裝了很多API,而Object-C搞了這麼多類和函式。具體原因,有待分析啊。
2.明明是NSString,字串操作,怎麼出現了”pathComponents“等操作檔案路徑相關的方法,很奇怪的趕腳。
3.stringByAppendingString,這函式的名字有點長啊。
4.總體感覺,Object-C的語法比Java複雜一些,碼程式碼的效率低了不少。
/
// main.m
// FilePathUtil
//
// Created by fansunion on 15/11/29.
// Copyright (c) 2015年 demo. All rights reserved.
//
#import <Foundation/Foundation.h>
//演示檔案路徑API
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *fileName =@"path.m";
NSFileManager *fm;
NSString *path,*tempDir,*extention,*homeDir,*fullPath;
NSArray *components;
fm =[NSFileManager defaultManager];
//臨時目錄
tempDir = NSTemporaryDirectory();
NSLog(@"The tempDir is %@",tempDir);
//提取基本目錄
path =[fm currentDirectoryPath];
NSLog(@"The base dir is %@",[path lastPathComponent]);
//fileName在當前目錄中的完整路徑
//這個地方有個問題
//本地輸出”/Users/fansunion/Library/Developer/Xcode/DerivedData/FilePathUtil-bvzjqehotbexooebruphtwcmqekz/Build/Products/Debugpath.m“
//Debug和path.m之間沒有”分隔符“/",而書本中的例子是有的
//最好還是手動加上,Java中也是沒有這個分隔符,需要手動加上的
fullPath =[path stringByAppendingString:fileName];
NSLog(@"The fullPath is %@",fullPath);
//獲得副檔名
extention = [fullPath pathExtension];
NSLog(@"The extentions is %@",extention);
//獲得使用者的主目錄
homeDir = NSHomeDirectory();
NSLog(@"The home directory is %@",homeDir);
//拆分路徑為各個組成部分
components = [homeDir pathComponents];
for(path in components){
NSLog(@"%@",path);
}
}
return 0;
}
程式輸出
2015-11-29 13:43:30.550 FilePathUtil[2861:179163] The tempDir is /var/folders/4q/5ylpds9n5n97bq_r41qvly4w0000gn/T/
2015-11-29 13:43:30.551 FilePathUtil[2861:179163] The base dir is Debug
2015-11-29 13:43:30.551 FilePathUtil[2861:179163] The fullPath is /Users/fansunion/Library/Developer/Xcode/DerivedData/FilePathUtil-bvzjqehotbexooebruphtwcmqekz/Build/Products/Debugpath.m
2015-11-29 13:43:30.551 FilePathUtil[2861:179163] The extentions is m
2015-11-29 13:43:30.552 FilePathUtil[2861:179163] The home directory is /Users/fansunion
2015-11-29 13:43:30.552 FilePathUtil[2861:179163] /
2015-11-29 13:43:30.552 FilePathUtil[2861:179163] Users
2015-11-29 13:43:30.553 FilePathUtil[2861:179163] fansunion
Program ended with exit code: 0
相關文章
- C#常見的檔案路徑ApiC#API
- 檔案絕對路徑和相對路徑
- 檔案路徑總結
- SQL Server 檔案路徑SQLServer
- 改變歸檔檔案路徑
- gcc g++ 新增標頭檔案路徑和庫檔案路徑的方法GC
- 回顧Node檔案路徑
- 查詢檔案位置路徑
- redolog檔案更改路徑
- 修改資料檔案路徑
- 檔案路徑是否正確
- Linux檔案的路徑定位-相對路徑和絕對路徑Linux
- 檔案的相對路徑和絕對路徑以及根相對路徑
- 【Python】配置檔案配置路徑Python
- 檔案路徑問題( ./ 和 ../ 和 @/ )
- 017-html檔案路徑HTML
- copy檔案到其他的路徑
- 修改表空間檔案路徑
- windows mobile下的檔案路徑Windows
- JAVA 取得當前目錄的路徑/Servlet/class/檔案路徑/web路徑/url地址JavaServletWeb
- 8.13 標頭檔案剖析:標頭檔案路徑(下)
- 更改資料檔案路徑的方法
- NodeJs 的幾種檔案路徑NodeJS
- QT 檔案相對路徑載入QT
- c#檔案路徑的獲取C#
- 12c日誌檔案路徑
- linux 帶路徑拷貝檔案Linux
- 獲取檔案路徑(Delphi )----轉貼
- 改變資料檔案的路徑
- C#檔案路徑操作總結
- Oracle 使用者Trace 檔案路徑Oracle
- import匯入檔案路徑注意點Import
- PbootCMS後臺檔案修改路徑位置boot
- vue專案可修改引入檔案的路徑Vue
- android下根據路徑不同拷貝檔案至指定路徑Android
- Python科研武器庫 - 檔案/路徑操作 - 判斷路徑是否存在Python
- win10 onenote如何修改檔案路徑_win10 onenote怎麼修改檔案路徑Win10
- 雲端計算面試題:檔案定位路徑面試題