1. 程式人生 > >【好程式設計師筆記分享】——檔案和目錄處理

【好程式設計師筆記分享】——檔案和目錄處理

<A href="http://www.goodprogrammer.org/" target="blank">ios培訓</A>------我的objective-c筆記,期待與您交流! 

檔案是Objective-C程式設計中是比較重要的一個概念。檔案一般指儲存在外部介質中的資料的集合。通過檔案我們可以把資訊永久儲存起來。本章主要介紹檔案中的讀寫和對資料的操作,目錄操作等。

一·檔案的操作

由於程式中常用到對檔案的大量操作。所以基礎框架上的NSFileManager提供了很多方法來處理檔案。

1·建立檔案

在對檔案進行處理之前必須先要建立一些檔案。可以使用Xcode來建立我們使用的檔案。單擊“File”|“New”|“NewFile”命令,在彈出的檔案選擇型別
對話方塊中選擇Other中的Empty File型別的檔案。在彈出的檔案儲存名稱和儲存位置對話方塊中輸入檔案的名字。將檔案放到執行程式可以訪問到的目錄下,本書選擇的是專案名/Buid/Debug目錄下。建立好檔案以後,可以手動在檔案中寫入一些內容。

2·檔案的使用

當檔案建立好以後就可以對檔案進行一些操作了。在對檔案進行操作時,應先將檔案操作的標頭檔案寫入。

1)建立管理物件

在操作檔案之前,將檔案操作的標頭檔案寫入,還需要建立一個檔案管理物件。所有的檔案和目錄操作都是通過這個物件進行的。

2)測試檔案是否存在

建立好檔案以後,要確定所建立的檔案是否存在,可以使用fileExistsAtPath來對檔案是否存在進行判斷。

[檔案管理物件 fileExistsAtPath:檔名]

使用形式fileExistsAtPath返回BOOL值。當檔案存在時返回“YES”,當檔案不存在時返回“NO”。

3)檔案的複製

copyPath是將原始檔及其原始檔中的內容進行復制。


4)比較檔案的內容是否一致


當我們要對兩個檔案的標識。大小及檔案中的內容進行比較時,可以採用contentsEqualAtPath()方法。

,需要注意檔名1和檔名2必須是同名的,它們的大小及檔案的內容必須一致。

5)檔案的刪除

當我們不再使用一些檔案時,應當將檔案及時刪除,以免造成空間的浪費,便於檔案的管理。我們可以使用removeFileAtPath()方法將檔案刪除。


6)移動檔案


7)獲取檔案的屬性

當要檢視檔案的屬性時,可以使用fileAttributesAtPath()方法

3·對檔案資料的操作

我們知道了對檔案的操作以後還需要對檔案中的資料進行操作。接下來主要介紹對檔案中資料的操作。在對檔案中的資料進行操作時,首先要進入資料物件的標頭檔案。

1)資料物件的建立

NSdata *資料物件名;

2)資料的輸出

使用stringWithContentsOfFile()可以對檔案中的資料進行輸出。

3)資料的讀取

讀取檔案中的資料時常常用到contentsAtPath()方法

[檔案管理物件 contentsAtPath:檔名]

4)資料的寫入


4·檔案的讀寫

1)建立

當我們對檔案的讀寫進行操作時,首先為檔案建立一個檔案讀寫物件,所有關於檔案讀寫的方法都在這個物件中進行,檔案讀寫物件的建立形式:

NSFileHandle *檔案讀寫物件

檔案讀寫物件可以建立一個,也可以建立多個,在建立多個檔案讀寫物件時,每一個檔案讀寫物件前面必須加上“*”號,檔案讀寫物件和檔案讀寫物件之間必須要用“,”號分
隔。

2)開啟

當要對檔案進行開啟時,方法有三種:一是為進行讀取操作開啟一個檔案fileHandleForReadingAtPath(),二是為進行寫入操作開啟一個檔案ileHandleForWritingAtPath(),三是為進行更新操作開啟一個檔案fileHandleForUpdatingAtPath()。

3)資料的讀取和寫入操作
當我們對檔案中的資料進行讀取

當我們對檔案中的資料進行讀取時,可以從開頭一直讀到尾,也可以讀取指定大小的檔案內容。

資料從頭讀到尾:readDataToEndOfFile()方法

檔案的寫入:用writeData()方法

讀取指定大小的位元組:用readDataOfLength()方法

4·關係檔案

當我們對一個開啟的檔案操作完畢以後,就要將檔案關閉。關閉檔案的方法是closeFile()。

[物件檔名 closeFile()]

二·目錄操作

1·返回當前目錄

1)要檢視檔案的當前目錄,可以使用currentDirectoryPath()

[檔案管理物件 currentDirectoryPath]

2)更改當前目錄

如果要對當前目錄進行修改,可以使用changeCurrentDirectoryPath()方法。

[檔案管理物件 changeCurrentDirectoryPath:檔名]

3)建立新目錄

createDirectoryAtPath()方法用來建立新的目

2·目錄顯示

1)列舉目錄的內容

列舉實際上是將變數的值一一列舉出來。列舉型別的定義形式

emum {male ,female  }

定義列舉型別時必須要以關鍵字enum開頭。將列舉的變數用花括號括起來。當我們要將目錄中的內容進行列舉時,也就是將目錄中的內容進行一一列出。使用列舉目錄中的內容的方法可以採用enumeratorAtPath()方法。

2)列出目錄的內容

directoryContentsAtPath()可以對目錄的內容就行列出:

[檔案管理物件 directoryContentsAtPath:目錄]

3)臨時目錄

為了滿足某種需要我們要擁有一些臨時檔案,這些臨時檔案可以通過獲得臨時目錄來建立,或者從主目錄中讀取檔案。使用NSTemporaryDirectory方法返回臨時目錄。

相關推薦

程式設計師筆記分享——檔案目錄處理

<A href="http://www.goodprogrammer.org/" target="blank">ios培訓</A>------我的objective-c筆記,期待與您交流!  檔案是Objective-C程式設計中是比較重要的一個概念

程式設計師筆記分享—— C語言中的檔案包含

我們在C語言中引用檔案,有時候會出現重複引用的情況,為了避免發生此種情況,我們想到了一個解決方案。程式碼如下: #include <stdio.h> #include "one.h" #include "two.h" int main(){

程式設計師筆記分享—— 通過指標遍歷字串中的所有字元

前面我們學習了通過指標遍歷一維陣列,現在我們來通過指標遍歷字串中的所有字元。先來通過陣列的方法進行遍歷,再通過直接字串的方法進行遍歷。程式碼如下: #include <stdio.h> #include <string.h> int main(i

程式設計師筆記分享—— C語言指標的理解

對於C語言中指標是非常重要的內容,也是C語言的魅力所在。下面我們來看一段程式碼理解指標: #include <stdio.h> int main(int argc, const char * argv[]) { //定義int型別的變數a

程式設計師筆記分享—— C語言中的extern關鍵字

C語言中的extern關鍵字不僅可以用變數還可以用於函式。當用於函式時,表示宣告函式,引用別人的“外部函式”;當用於變數時,表示宣告一個已經定義過的變數,必須結合定義變數使用。下面我們先來看一個extern用於函式的例子。 先來看一下檔案結構: test.c中的程式碼如下

一個程式設計師的表白 2014.7月畢業以來,我懷揣著夢想,準備下一番苦功夫,混個出人頭地,沒想到時間給我沉重的打擊!回想到現在流過的歲月,碌碌無為,倍感傷心淒涼!今天是2015.3.29,我開始記錄我生活的點滴.

2014.7月畢業以來,我懷揣著夢想,準備下一番苦功夫,混個出人頭地,沒想到時間給我沉重的打擊!回想到現在流過的歲月,碌碌無為,倍感傷心和淒涼!今天是2015.3.29,我開始記錄我生活的點滴....

黑馬程式設計師西安中心一個女程式猿的成長曆程

    就這樣結束了我為期幾個月的學習生活,想著來大城市好好找份工作,回報父母,於是,背上行囊,提著我的小小筆記本,開始了北漂生活,來到這人生地不熟的首都。不停的投簡歷,剛開始根本沒有面試機會,人家一看是專科學歷就直接刷掉了,好不容易約到一個面試,起一大早擠地鐵到公司後,只面了人事就讓回來等通知,很受挫,我不

程式設計師技術分享jQuery實現類似fullpage外掛的全屏滾動效果

開發十年,就只剩下這套架構體系了! >>>   

程式設計師技術分享淺談JavaScript中的閉包

開發十年,就只剩下這套架構體系了! >>>   

程式設計師教程分享關於ajax物件一些常見的問題總結

    好程式設計師教程分享關於ajax物件一些常見的問題總結最近比較空閒,於是抽個時間整理些關於a

程式設計師教程分享Javascript設計模式

好程式設計師教程分享Javascript設計模式 方法一 物件字面量表示法   在物件字面量表示法中,一個物件被描述為一組包含在

程式設計師前端分享HTML5 發展史

  好程式設計師前端分享HTML5發展史,HTML5草案的前身名為WebApplications1.0,於2004年被WHATWG

程式設計師Java分享Java案例_英漢字典

好程式設計師Java分享Java案例_英漢字典,在寫程式碼的時候,當滑鼠懸浮在某一個單詞上面的時候,有道詞典點有時會彈出一個訊息氣

程式設計師前端分享使用JS開發簡單的音樂播放器

好程式設計師前端分享使用JS開發簡單的音樂播放器,最近,我們在教學生使用JavaScript,今天就帶大家開發一款簡單的音樂播放器

程式設計師Java分享JVM結構

  好程式設計師Java分享JVM結構,jvm的基本結構,也就是我們俗稱概述。內容很多,而且概念量也很大,關於概念方面,讓概念在你

程式設計師JavaScript分享ES6相關知識

let&&const [size=0.9em]let與[size=0.9em]var的區別   let 變數名=變數值     使用let建立變數和使用var建立變數的區別   1、用var宣告的變數會變數提升,用let宣告的變數不會進行變數提升

Robot定位 學習筆記 1GPSIMU(慣導)在無人駕駛中的應用

無人駕駛定位技術 行車定位是無人駕駛最核心的技術之一,全球定位系統(GPS)在無人駕駛定位中也擔負起相當重要的職責。然而無人車是在複雜的動態環境中行駛,尤其在大城市,GPS多路徑反射的問題會很明顯。這樣得到的GPS定位資訊很容易就有幾米的誤差。對於在有限寬度高速行駛的汽車來說,這樣的誤差很有可能

Linux檔案目錄操作——cd、mkdir、rm、cp...

目錄的表示: . 代表此層目錄 .. 代表上一層目錄 - 代表前一個工作目錄 ~ 代表『目前使用者身份』所在的家目錄 ~account 代表 account 這個使用者的家目錄 絕對路徑:從根目錄/開始寫起的路徑; 相對

Linux學習筆記之1——檔案目錄管理(硬連線軟連線)(連結檔,相當於快捷方式)

在這節將要學習linux的連線檔,在之前用"ls -l" 檢視檔案屬性的命令時, 其中第二個屬性是連線數。那麼這個連線數是幹什麼的?這就要理解inode。     先說一下檔案是怎麼儲存的。檔案儲存在硬碟上,硬碟的最小儲存單位叫做"扇區"(Sector),每個扇區儲存512位元

Linux系統下python學習筆記——Linux中檔案目錄常用命令詳解

一、檢視目錄內容 ls命令說明: 英文單詞list的簡寫,功能為列出目錄的內容,是使用者最常用的命令字義    Linux下檔案和目錄的特點: Linux檔案或目錄名稱最長可以有256個字元 以 . 開頭的檔案為隱藏檔案,需要用-a引數才能顯示(all