導航:首頁 > 凈水問答 > nspredicate過濾對象

nspredicate過濾對象

發布時間:2020-12-20 07:22:39

㈠ 為什麼一些正則運算再nspredicate沒用 了

例如:判斷字元串首字母是否為字母。

Objective-c代碼
NSString *regex = @"[A-Za-z]+";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];

if ([predicate evaluateWithObject:aString]) {
}

判斷Array中是否包含某一規則的對象,並返回一個數組:
NSPredicate *filterPredicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS %@", regex];
並調用:- (NSArray *)filteredArrayUsingPredicate:(NSPredicate *)predicate; 方法即可。

獲得一個數組中某些對象除外的數組:
NSPredicate *notPredicate = [NSPredicate predicateWithFormat:@"NOT (SELF in %@)", arrayFilter2];且還是要調用- (NSArray *)filteredArrayUsingPredicate:(NSPredicate *)predicate; 方法。

同樣,如果我們想找出某個范圍內的對象,創建如下Predicate (這里可以用到所有的比較操作符): NSPredicate *pre = [NSPredicate predicateWithFormat:@"self.*** < 5"];
並調用:- (BOOL)evaluateWithObject:(id)object;方法。
在這里啰嗦一句,如果只是在數組中查找是否存在對象時用indexOfObject,如果不存在則返回為NSNotFound.

㈡ ios開發 nspredicate中怎麼用sum

//找出一個數組
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *defaultPath = [[NSBundle mainBundle] resourcePath];
NSError *error;

NSArray *directoryContents = [fileManager contentsOfDirectoryAtPath:defaultPath error:&error]
//匹配字元串,反回結果, SELF==表示數組中每一個元素
NSString *match = @"imagexyz-999.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF == %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];

//近似匹配字元串,類似SQL中的語法
NSString *match = @"imagexyz*.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF like %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];
//不區分大小寫匹配
NSString *match = @"imagexyz*.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];
//正則匹配
NSString *match = @"imagexyz-//d{3}//.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF matches %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];

㈢ ios nspredicate 判斷一個字典里是否有匹配的字元轉

字典里是否有匹配的字元
// 創建出10個person對象,並加入數組
NSMutableArray *muArray = [NSMutableArray array];
for (int i = 0; i <10; i++) {
Person *person = [Person personWithName:[NSString stringWithFormat:@"zhang%d",i] Age:i];
[muArray addObject:person];

}
NSLog(@"muArray = %@", muArray);

1)比較運算符

/**比較運算符
* >:大於
* <:小於
* >=:大於等於
* <=:小於等於
* =,==:等於
* !=,<>:不等於
* between:左邊的表達式等於右邊的表達式的值或者介於它們之間。右邊是一個有兩個指定上限和下限的數值的數列(指定順序的數列)。比如,1 BETWEEN { 0 , 33 },或者$INPUT BETWEEN { $LOWER, $UPPER }。
**/
// 例子:年齡屬性大於3歲,注意:鍵路徑不能用單引號引起來,否則會報錯
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"age > 3"];

㈣ coredata應用開發實踐指南這本書怎麼樣

第一步:創建一個 DataDemo.xcdatamodel 文件,在其中建一個實體名字為 Entity1 ,實體中建兩個欄位 id 和 name。
第二步:為項目添加 CoreData.framework 框架,然後在 .pch 中加入 #import <coredata/coredata.h>
第三步:在 app delegate 中定義 core data 的相關對象(同時完成它們的初始化工作)
.h 文件:
#import <coredata/coredata.h>
@private
NSManagedObjectModel *managedObjectModel;
NSManagedObjectContext *managedObjectContext;
NSPersistentStoreCoordinator *persistentStoreCoordinator;
@property (nonatomic, retain, readonly) NSManagedObjectModel *managedObjectModel;
@property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain, readonly) NSPersistentStoreCoordinator *persistentStoreCoordinator;
- (NSString*) applicationDocumentsDirectory;
- (void) saveContext;
.m 文件:
@synthesize managedObjectModel;
@synthesize managedObjectContext;
@synthesize persistentStoreCoordinator;
- (void)dealloc {
[managedObjectModel release];
[managedObjectContext release];
[persistentStoreCoordinator release];
[super dealloc];
}
- (NSString*)applicationDocumentsDirectory
{
//return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
NSArray *paths = (NSDocumentDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
return basePath;
//return [NSURL URLWithString:basePath];
}
- (void)saveContext{
NSError *error = nil;
NSManagedObjectContext *objectContext = self.managedObjectContext;
if (objectContext != nil)
{
if ([objectContext hasChanges] && ![objectContext save:&error])
{
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
}
}
- (NSManagedObjectContext *)managedObjectContext
{
if (managedObjectContext != nil) {
return managedObjectContext;
}
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
if (coordinator != nil) {
managedObjectContext = [[NSManagedObjectContext alloc] init];
[managedObjectContext setPersistentStoreCoordinator:coordinator];
}
return managedObjectContext;
}
- (NSManagedObjectModel *)managedObjectModel
{
if (managedObjectModel != nil) {
return managedObjectModel;
}
//從本地所有 xcdatamodel 文件中獲得這個 CoreData 的數據模板
managedObjectModel = [[NSManagedObjectModel mergedModelFromBundles:nil] retain];
return managedObjectModel;
}
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if (persistentStoreCoordinator != nil) {
return persistentStoreCoordinator;
}
//資料庫名為TestDB.sqlite
NSURL *storeUrl = [NSURL fileURLWithPath:[[self applicationDocumentsDirectory] :@"TestDB.sqlite"]];
NSError *error;
persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nilURL:storeUrl options:nil error:&error]) {
NSAssert(0, @"persistentStoreCoordinator init failed!");
}
return persistentStoreCoordinator;
}
- (void)applicationWillTerminate:(UIApplication *)application
{
NSError *error;
if (managedObjectContext != nil) {
if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) {
NSAssert(0, @"save changes failed when terminage application!");
}
}
}
第四步:在相關的 viewcontroller 中操作數據,基本的 core data 操作代碼如下:
NSError *error;
testSQLiteAppDelegate *app = (testSQLiteAppDelegate*)[[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = app.managedObjectContext;

//1、插入
NSManagedObject *newManagedObject = nil;
newManagedObject = [NSEntityDescription :@"Entity1" inManagedObjectContext:context];
[newManagedObject setValue:[NSNumber numberWithInt:1] forKey:@"id"];
[newManagedObject setValue:@"i love you" forKey:@"name"];
if (![context save:&error]){
NSLog (@"The error is: %@", [error userInfo]);
}
else
{
NSLog (@"The newManagedObject's id is: %@", [newManagedObject valueForKey:@"id"]);
}
//2、查詢
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Entity1" inManagedObjectContext:context];
NSSortDescriptor *sortDescriptor1 = [[NSSortDescriptor alloc] initWithKey:@"id" ascending:YES];
NSSortDescriptor *sortDescriptor2 = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor1, sortDescriptor2, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
[fetchRequest setEntity:entity];
[fetchRequest setFetchBatchSize:20];
NSArray *objects = [context executeFetchRequest: fetchRequest error:&error];
if (objects == nil)
{
NSLog(@"There was an error!");
}
else {
for (NSManagedObject *oneObject in objects)
{
NSLog(@"%@",[oneObject valueForKey:@"name"]);
}
}
//3、刪除
[context deleteObject:[objects objectAtIndex:0]];
if (![context save:&error]) {
exit(-1);
}
這里更詳細的補充一點關於 core data 的操作代碼:
1、條件過濾:選擇 cid=1 的數據
- (NSFetchedResultsController*) fetchedResultsController
{
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"cid=1"];
[fetchRequest setPredicate:predicate];
}
2、通用代碼,在 viewcontroller 裡面會用到:
TestViewController.h 的代碼:
@interface TestViewController : UITableViewController <>
{
NSFetchedResultsController *fetchedResultsController;
NSManagedObjectContext *managedObjectContext;
}
@property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController;
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
- (void)configureCell:(UITableViewCell *)cell withCategory:(Category *)category;
@end
TestViewController.m 的代碼:
-(NSFetchedResultsController *)fetchedResultsController
{
if (fetchedResultsController != nil)
{
return fetchedResultsController;
}
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Category" inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *nameDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
NSArray *arraySortDescriptor = [[NSArray alloc] initWithObjects:nameDescriptor, nil];
[fetchRequest setSortDescriptors:arraySortDescriptor];
NSPredicate *predicate = [NSPredicate predicateWithFormat:cidString];
[fetchRequest setPredicate:predicate];
NSFetchedResultsController *frController = [[NSFetchedResultsController alloc]
initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:@"name" cacheName:@"Root"];
frController.delegate = self;
self.fetchedResultsController = frController;
[frController release];
[fetchRequest release];
[nameDescriptor release];
return fetchedResultsController;
}

- (void)controllerWillChangeContent:(NSFetchedResultsController *)
{
[self.tableView beginUpdates];
}

- (void)controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject
atIndexPath:(NSIndexPath *)indexPath forChangeType: (NSFetchedResultsChangeType)type
newIndexPath:(NSIndexPath *)newIndexPath
{
UITableView *tableView = self.tableView;
switch (type) {
case NSFetchedResultsChangeInsert:
[tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:newIndexPath] withRowAnimation:UITableViewRowAnimationFade];
break;
case NSFetchedResultsChangeDelete:
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
break;
case NSFetchedResultsChangeMove:
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:newIndexPath] withRowAnimation:UITableViewRowAnimationFade];
break;
case NSFetchedResultsChangeUpdate:
[self configureCell:[tableView cellForRowAtIndexPath:indexPath] withCategory:anObject];
break;
default:
break;
}
}

- (void)controller:(NSFetchedResultsController *)controller didChangeSection:(id <NSFetchedResultsSectionInfo>)sectionInfo
atIndex:(NSUInteger)sectionIndex forChangeType:(NSFetchedResultsChangeType)type
{
switch(type) {
case NSFetchedResultsChangeInsert:
[self.tableView insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationFade];
break;
case NSFetchedResultsChangeDelete:
[self.tableView deleteSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationFade];
break;
}
}

- (void) controllerDidChangeContent:(NSFetchedResultsController *)controller
{
[self.tableView endUpdates];
}

㈤ ios開發中NSArray怎麼用NSPredicate來過濾數組內容

//找出一個數組
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *defaultPath = [[NSBundle mainBundle] resourcePath];
NSError *error;

NSArray *directoryContents = [fileManager contentsOfDirectoryAtPath:defaultPath error:&error]
//匹配字元串,反回結果, SELF==表示數組中每一個元素
NSString *match = @"imagexyz-999.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF == %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];

//近似匹配字元串,類似SQL中的語法
NSString *match = @"imagexyz*.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF like %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];
//不區分大小寫匹配
NSString *match = @"imagexyz*.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];
//正則匹配
NSString *match = @"imagexyz-//d{3}//.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF matches %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];

㈥ 1,searchbar怎樣去掉背景的顏色storyboard里只能設置background

1,Search Bar 怎樣去掉背景的顏色(storyboard里只能設置background顏色,可是發現 Color無法使用)。
其實在代碼里還是可以設置的,那就是刪除背景view
[[self.searchBar.subviews objectAtIndex:0] removeFromSuperview];

2,NSDate:

字母 日期或時間元素 表示 示例
G Era 標志符 Text AD
y 年 Year 1996 96
M 年中的月份 Month July; Jul; 07
w 年中的周數 Number 27
W 月份中的周數 Number 2
D 年中的天數 Number 189
d 月份中的天數 Number 10
F 月份中的星期 Number 2
E 星期中的天數 Text Tuesday; Tue
a Am/pm 標記 Text PM
H 一天中的小時數(0-23) Number 0
k 一天中的小時數(1-24) Number 24
K am/pm 中的小時數(0-11) Number 0
h am/pm 中的小時數(1-12) Number 12
m 小時中的分鍾數 Number 30
s 分鍾中的秒數 Number 55
S 毫秒數 Number 978
z 時區 General time zone Pacific Standard Time; PST; GMT-08:00
Z 時區 RFC 822 time zone -0800

[注意]在開發中,如果使用年月日,用NSDateFormatter setFormat :@"yyyy-MM-dd",如果是使用小時和分鍾,設置為:"HH:mm",切記不要設置「HH-mm」,這樣會出錯的。

舉例:

//創建一個時間對象
NSData * date = [NSDate date];
//列印時間
NSLog(@"today is %@",date);

//再獲取的時間date減去24小時的時間(昨天的這個時候)
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-(24*60*60)];
NSLog(@"yesterday is %@",yesterday);//列印昨天的時間

/*字元串換成時間*/
//設置一個字元串的時間
NSString *datestring = [NSString stringWithFormat:@"1999-09-03"];
//想要設置自己想要的格式,可以用nsdateformatter這個類,這里是初始化
NSDateFormatter * dm = [[NSDateFormatter alloc]init];
//指定輸出的格式 這里格式必須是和上面定義字元串的格式相同,否則輸出空
[dm setDateFormat:@"yyyy-MM-dd"];
//把字元串的時間轉換成Date對象,用dateFromString方法
NSDate * newdate = [dm dateFromString:datestring];
//輸出
NSLog(@"newdate is %@",newdate);

/*把時間轉換成字元串*/
//把Date對象轉換成String對象 用stringFromDate方法
NSString * datestring2 = [dm stringFromDate:newdate];
//列印
NSLog(@"datestring2 is %@",datestring2);

3,如果使用 UTTabviewCell,設置其accessory樣式為:Detail Disclosure ,就是在每一個cell右邊設置一個detail button。如果這樣的操作是使用storyboard,進行的,它會要求你給每一個你cell設置indentifier,然後你會在以下方法內設置重用indentfier,別忘記加上一句話,否則編譯運行時可能會彈出: cell未實例化

4,在開發項目中,有時有這樣的需求:運行程序,登陸界面是一個自由的ViewController,只是擺放幾個TextField和button,點擊後跳轉到孩子選擇或其它選擇界面,點擊選項後進入我們的主界面:這個時候,在登陸界面作跳轉時,會有好多的方法,如果使用storyboard,就比較方便了,設置一個segue,跳轉代碼中:
[self PerformSegueWithIdentifier:@"targetViewController",self]; 就可以了,可是我想實例化想要跳轉的控制器,然後設置某一屬性的值,這樣跳轉後控制器獲取那個屬性,就會得到值了,可是這樣做會有一個問題:
主界面控制器如果使用了navigatorViewController,並且是其RootViewController,等到在主界面設置功能,點擊某一功能,想push到一個新頁面時,問題就來了,你會發現毫無反應,沒有報錯,只是segue無法跳轉。後來終於找到原因:就是我在登陸控制器跳轉時沒有使用segue的方法,而是用代碼self.storyboard,載入一個新類,具體原理目前還沒有搞明白,先把出問題的代碼記錄下來,回頭補之:

代碼這樣做,會導致其後無法使用navigatorViewController做push跳轉

5,(1010更新)開發過程中,我們通過http請求,後台返回json數據,而有時數據里某一欄位的值為null~,然後我們把此值賦值給NSArray,NSdictionary,或是NSString,然後我們會判斷此值為null時,所做的處理,而通常慣性思維判斷時我們都會寫:if(dict == nil)或是if(dict == Nil)或是if(dict == NULL)再或是if(dict isEqual nil),我們發現,都不好用,根本沒有起到判斷的作用~後來我才發現,原來不能這樣來判斷。
簡單點說,就是當字典,數組為null時,後台列印的輸出結果是這樣:

然後,我們需要在代碼判斷時利用[NSNull null]來判斷,具體如:

isEqual:[NSNull null] 就搞定了,nsarray也是同樣的道理。

控制台列印:str=(null) 代表著 字元串或數組或字典是一個空指針,(而非空字元串)判斷的時候,直接用:
if(str == nil)就可以了。如下圖所示:

而控制台列印:str = <null>,代表著這是一個空字元串,賦值為空,指針是存在的,只是內容為空,這種判斷需要使用:
if(str is equal [NSNull null ]) ,因為在ios上,內容為空不能簡單的判斷str==null(null 在ios上得用[NSNull null])

一般這種情況是,伺服器那邊是null,直接返回@"null"的字元串,這樣在ios這邊不好判斷,最好跟後台溝通,如果遇到null值,返回@"",好做判斷

6,給uiview設置圓角樣式
只需在載入時,添加這樣的話就可以了:
testView.layer.cornerRadius = 6;
testView.layer.masksToBounds = YES;

注意,需要 import <QuartzCore/QuartzCore.h> 導入,否則,不能識別cornerRadius和masksToBounds。

uiview設置背景圖片:
[theMainView setBackgroundColor: [UIColor colorWithPatternImage: [UIImage imageNamed: @"bg.png"]]];

imageName 緩存,下面方法不緩存
NSString *thePath = [[NSBundle mainBundle] pathForResource:@"default" ofType:@"jpeg"];
UIImage *prodImg = [[UIImage alloc] initWithContentsOfFile:thePath"];
controller.proctImg.image = prodImg;
[prodImg release];

7,隱藏鍵盤的兩種方法
1-1Did End On Exit 調用下面事件當點擊鍵盤return得時候就會隱藏鍵盤
- (IBAction)textFieldShouldReturn:(UITextField *)textField {
//[sender resignFirstResponder];
if (textField == chi) {
[chi resignFirstResponder];
double m=[chi.textdoubleValue]/3.003;
double f=m *3.2808;
meter.text=[[NSStringalloc] initWithFormat:@"%.4f",m];
feet.text=[[NSStringalloc] initWithFormat:@"%.4f",f];
}
if (textField == meter) {
[meter resignFirstResponder];

}
if (textField == feet) {
[feet resignFirstResponder];
}
}
1-2 點擊屏幕得時候隱藏鍵盤
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch=[[event allTouches] anyObject];
if (touch.tapCount >=1) {
[chi resignFirstResponder];
[meter resignFirstResponder];
[feet resignFirstResponder];
}
}

1-2的方法相當於屏幕任何位置的點擊事件(除了各組件的點擊處)可以在這個方法里執行要隱藏或remove的view。

8,UITextField密文顯示輸入內容:

只需要在TextField屬性中的Secure(安全的)勾選上就可以了。顯示apple默認的密文顯示方式。

9,通過系統自帶的NSPredicate使用正則表達式。(在TextField中)

NSString *regex =[NSString stringWithFormat:@"^1(3[4-9]|5[012789]|8[2378]|47)\\d{8}$"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex];
BOOL isMatch = [predicate evaluateWithObject:editPhoneField.text];

10,項目設置應用程序顯示名稱:
1,在項目的Supporting Files下尋找infoPlist.strings文件,打開後會看到一片空白(英文默認是跟隨項目名稱顯示)。此時,可以就地添加一句代碼:CFBundleDisplayName="愛貝通";
這樣的話,無論手機設置英文語言還是中文語言,應用程序都會顯示設置的名稱。
2,為了國際化而言,我們最好創建一個chinese專有的infoPlist.strings文件。

如上圖所示,添加一個中文的plist
然後打開添加代碼:

這個時候,大功告成。部署在模擬器或真機中吧,你的手機設置(中/英)文語言,它就會調用相應的配置文件。

㈦ 求教一個關於CoreData里NSPredicate的用法問題

NSDate *endDate = [NSDate date];
NSTimeInterval timeInterval= [endDate ];
timeInterval -=3600*24;
NSDate *beginDate = [NSDate :timeInterval];
//過期襲的日期
NSPredicate *predicate_date =
[NSPredicate predicateWithFormat:@"date <= %@", beginDate];

[fetchRequest setPredicate:predicate_date];

㈧ NSPredicate 具有多個條件

很高興抄告訴你!
通過你的訴說,其實襲作為傍觀者,根本就沒看到你們復合之後的愛。很明顯你們這次是跟金扯上關系了。一個男人,不說養著自己的女友,反而總是要。說句不好聽的,對方不會把你當搖樹呢吧!而且每次都是你找他,在他的心裡你離不開他。你說你還喜歡他,但是有時有些事是不會有結果的。這樣的他你都喜歡,但是他是真心喜歡你的嗎要過年了,新年新氣象 未嘗不是一個好的選擇。(僅供參考)
為你解除疑惑是我的快樂!

㈨ NSPredicate 具有多個條件

//找出來一源個數組 NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *defaultPath = [[NSBundle mainBundle] resourcePath]; NSError *error; NSArray *directoryContents = [fileManager contentsOfDirectoryAtPath:defau。

閱讀全文

與nspredicate過濾對象相關的資料

熱點內容
魚缸太大換不幹凈水怎麼辦 瀏覽:203
凈水出來的水喝茶為什麼有茶銹 瀏覽:844
反滲透膜臟了什麼情況 瀏覽:26
城市餐飲污水排放管道分哪些 瀏覽:159
孕期凈水器多少錢 瀏覽:774
污水工作測do值有什麼要求 瀏覽:319
小鏟車空氣濾芯怎麼安裝正反 瀏覽:844
污水反吊膜怎麼收費 瀏覽:782
污水二氧化氯超標 瀏覽:453
凈之源飲水機如何更換濾芯視頻 瀏覽:500
純凈水和疫苗哪個好 瀏覽:348
招金膜天超濾膜價格 瀏覽:613
凈水器安裝工怎麼樣 瀏覽:35
污水崗位怎麼做到節能降耗 瀏覽:856
廢水含什麼成分 瀏覽:712
管道水垢清洗劑 瀏覽:8
過濾水燒開有味怎麼辦 瀏覽:232
森森前置過濾桶串聯 瀏覽:163
茶具飲水機壞了怎麼處理 瀏覽:754
雨水回用模塊 瀏覽:64