日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Objective-C之成魔之路【16-使用文件】

發布時間:2025/6/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Objective-C之成魔之路【16-使用文件】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

郝萌主傾心貢獻,尊重作者的勞動成果。請勿轉載。

假設文章對您有所幫助,歡迎給作者捐贈。支持郝萌主,捐贈數額任意。重在心意^_^?

我要捐贈:?點擊捐贈

Cocos2d-X源代碼下載:點我傳送


語言的設計主要是被應用于實踐,

而Objective-C應用最廣的地方就是Mac OS X或iOS的Foundation框架。


Foundation框架同意你利用文件系統對文件或文件夾運行基本操作,這些基本操作是由NSFileManager類提供的。

使用NSFileHandle類提供的方法,能夠打開文件并對文件運行多次讀/寫操作。

NSFileHandle類的方法能夠實現例如以下功能:

1)打開一個文件,運行讀、寫或更新(讀取和寫入)操作。

2)在文件里查找指定位置。

3)從文件里讀取特定數目的字節。或將指定數目的字節寫入文件。


NSFileHandle類提供的方法也可用于各種設備或套接字。

非常多語言中使用的框架也有類似的FileHandle。

NSURL類同意在應用中使用URL方法。

這個和Java中的URL差點兒相同。

NSBundle類提供了同意在應用中使用包(bundle)的方法。包含搜索包中的特定資源。

這個東西更類似于Android應用中的Resource或R之類干的活。


管理文件和文件夾使用NSFileManager,文件或文件夾使用文件的路徑名為唯一標識。

完整路徑也稱為絕對路徑,以斜線(/)開始。

特殊的代字符(~)作為用戶主文件夾的縮寫。

當前文件夾為".";

父文件夾為“..”;

這些概念和Linux里面一樣。


每一個文件方法都是對NSFileManager對象的調用,

而NSFileManager對象是通過向類發送一條defaultManager消息創建。

iOS的設備上。程序是執行在沙盒中的,它嚴格限定了文件的訪問。

假設在設備中執行這個程序,會看到當前文件夾是/,

這說明應用的根文件夾是在執行它的沙盒中,并非整個iOS設備文件文件夾的根。

能夠這么理解,每個應用程序都是一個進程。這樣它的作用范圍就是進程的上下文。

沙盒就是進程。

這個和Android是一樣的道理。

Android中。每一個應用都執行在一個進程中,每一個應用都有自己的pid,即進程號。

也不能隨便訪問別的進程的數據或者奔潰時影響到其他應用。

這就是沙盒的原理。

事實上,這些同樣點都是由于它們兩個生態的最底層OS都是unix類似的原理所致。

熟悉Unix的同學都知道。進程。用戶這些概念,事實上就是沙盒的概念。


使用路徑用NSPathUtilities.h

components是一個NSArray對象,它包括路徑中每一部分的字符串對象。

Path是一個字符串對象。它指定文件的路徑;ext是路徑擴展名的字符串對象。

如@“mp3”


為了保存數據直到下一次執行程序仍可以使用。可以使用Documents文件夾。

每一個iOS應用都有自己的Documents文件夾供數據寫入。

應用中的Caches文件夾也能夠用來存儲一些數據。

對于iOS開發說。Apple鼓舞開發人員存儲持久化數據到云端。


對于這些Documents的理解。能夠這么理解,每一個應用程序都是一個用戶。

在類Unix系統中。每個用戶事實上都是在home文件夾(Linux系統的home)下的不同用戶文件夾分開。

不同username目錄中都有主要的目錄,Documents,Downloads這類的。

簡言之,應用程序一般都屬于某一個用戶(UserId),某一個進程(Pid)。

并且普通情況下不同應用程序的用戶標識和進程標識都是不一樣的。這就是所謂沙盒原理。


NSProcessInfo類中的argments方法返回一個字符串對象數組。

數組的第一個元素是進程名稱,其余的元素是在命令行中輸入的參數。

這個類主要用來記錄當前進程的信息。

事實上,我們都知道。unix下的進程入口都是main函數。

這也就是為什么NSProcessInfo會記錄命令行中的輸入參數的原因。

命令行中的輸入參數都是通過main函數的入參傳入的。


基本文件操作:NSFileHandle,可用于標準輸入、標準輸出、標準錯誤和控設備。

應該注意NSFileHandle類并沒有提供創建文件的功能。

創建文件須使用FileManager的方法來創建。

另外,Unix系統下,應注意,打開文件進行寫入并不會截斷文件。須要自己完畢截斷。


NSURL對象并非一個字符串(如@“http://blog.csdn.net/haomengzhu”)。

可是使用URLWithString:方法能夠由一個字符串對象創建出NSURL對象。


NSBundle類:

當創建一個應用時,系統存儲了應用相關聯的全部數據(當中包含圖片、本地化字符串、圖標等),

將這些內容放入一個稱為應用包(application bundle)的包中。

在應用中加入一個資源(如圖片或文本文件),僅需將文件拖到Xcode的左邊窗格中。

mainBundle方法給出了應用包所在的文件夾。這種方法在Mac OS X和iOS中都適用。

總結

以上是生活随笔為你收集整理的Objective-C之成魔之路【16-使用文件】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。