這篇文章是自己通過實踐獲取,在網上查過很多資料,也走了不上的彎路,由於剛開始學子不久,只是把自己遇到的問題貢獻給大家
一,建立檔案
//獲取路徑物件
nsarray
*paths =nssearchpathfordirectoriesindomains(nsdocumentdirectory,nsuserdomainmask,
yes);
//獲取完整路徑
nsstring *documentsdirectory = [paths objectatindex:0];
nsmutabledictionary*dictplist = [[nsmutabledictionary
alloc
] init];
//設定屬性值
[dictplist setobject:@"
張三" forkey:@"name"];
[dictplist setobject:@"李四"
forkey:@"name1"];
[dictplist setobject:@"王五"
forkey:@"name2"];
//寫入檔案
[dictplist writetofile:plistpath atomically:yes];
這個是建立了乙個簡單的plist檔案,建立後的圖1為:
下面是建立了一種多鍵值的plist檔案,**和圖如下:
//獲取路徑物件
nsarray
*paths =nssearchpathfordirectoriesindomains(nsdocumentdirectory,nsuserdomainmask,
yes);
//獲取完整路徑
nsstring *documentsdirectory = [paths objectatindex:0];
nsmutabledictionary*dictplist = [[nsmutabledictionary
alloc
] init];
//定義第乙個外掛程式的屬性
nsmutabledictionary*plugin1 = [[nsmutabledictionary
alloc
]init];
[plugin1 setobject:@"張三"
forkey:@"name1"];
[plugin1 setobject:@"李四"
forkey:@"name2"];
//定義第二個外掛程式的屬性
nsmutabledictionary*plugin2 = [[nsmutabledictionary
alloc
]init];
[plugin2 setobject:@"王五"
forkey:@"name1"];
[plugin2 setobject:@"趙斌"
forkey:@"name2"];
//設定屬性值
[dictplist setobject:plugin1 forkey:@"
初一班"];
[dictplist setobject:plugin2 forkey:@"
初二班"];
//寫入檔案
[dictplist writetofile:plistpath atomically:yes];
圖2:
針對圖1進行修改的程式,**如下:
nsstring
*path = [[nssearchpathfordirectoriesindomains(nsdocumentdirectory,nsuserdomainmask,
yes) objectatindex:
0@"test.plist"
];
alloc
]initwithcontentsoffile
:path]
mutablecopy
];
name = @"山山";
執行後如下圖:
針對圖2進行修改的程式,**如下:
[dictplist writetofile:plistpath atomically:yes];
nsstring
*path = [[nssearchpathfordirectoriesindomains(nsdocumentdirectory,nsuserdomainmask,
yes)objectatindex:
0@"test.plist"];
//根據路徑獲取test.plist的全部內容
nsmutabledictionary
*infolist= [[[
nsmutabledictionary
alloc
]initwithcontentsoffile
:path]
mutablecopy];
//獲取初一班的資訊
nsmutabledictionary *info = [infolist objectforkey:@"
初一班"];
nsstring *name1 = [info objectforkey:@"name1"];
name1 = @"
山山";
[info setvalue:name1 forkey:@"name1"];
[infolist setvalue:info forkey:@"
初一班"];
[infolist writetofile:path atomically:yes];
圖如下:
以上兩個修改資訊的地方,必須要加入紅色標記的方法,才能在表裡進行增改操作。
以上是個人的學習心得,請大家多多指教。
plist檔案修改
plist全名是 property list,屬性列表檔案,它是一種用來儲存序列化後的物件的檔案。檔案是xml格式的。檔案讀取 nsmutablearray data nsmutablearray alloc initwithcontentsoffile filepath 檔案寫入 data wri...
iOS 對plist增改操作
這篇文章是自己通過實踐獲取,在網上查過很多資料,也走了不上的彎路,由於剛開始學子不久,只是把自己遇到的問題貢獻給大家 一,建立檔案 獲取路徑物件 nsarray paths nssearchpathfordirectoriesindomains nsdocumentdirectory,nsuserd...
iOS 對plist增改操作
這篇文章是自己通過實踐獲取,在網上查過很多資料,也走了不上的彎路,由於剛開始學子不久,只是把自己遇到的問題貢獻給大家 一,建立檔案 獲取路徑物件 nsarray paths nssearchpathfordirectoriesindomains nsdocumentdirectory,nsuserd...