nsstring

UISheet 和UIImageController

左心房为你撑大大i 提交于 2020-04-03 18:38:21
ios UIActionSheet UIActionSheet *uisheet=[[UIActionSheet alloc]initwithtititle:delegete:canclebutton: destructiveButtonTitle:otherbuttontitles:,nil]; ] UIimagePickerController: allwoEditing SourceType: UIImagePickerControllerSourceTypeCamera UIImagePickerControllerSourceTypePhotoLibraryMediaTypoe:kUITypeImagekUITypeMovie UIImage *img = [info objectForKey:UIImagePickerControllerEditedImage]; self.fileData = UIImageJPEGRepresentation(img, 1.0);// NSString *videoPath = [[info objectForKey:UIImagePickerControllerMediaURL] path]; self.fileData = [NSData dataWithContentsOfFile:videoPath]; iOS 获取图片

OC-字符串、数组、字典总结

回眸只為那壹抹淺笑 提交于 2020-04-03 10:22:46
#import <Foundation/Foundation.h> /* ∆以NSMutable开头的都是可变类型,以NSMutable开头定义的对象都是可以对数据进行修改; NSString //不可变字符串 NSMutableString//可变字符串 NSArray// 不可变数组 NSMutableArray//可变数组 NSDictionary//不可变字典 NSMutableDictionary//可变字典 可变的意思是可以对这个类型定义的变量进行修改或者删除操作 */ int main(int argc, const char * argv[]) { @autoreleasepool { /************************* 总结:字符串 **********************************/ //============== NSString =========================== NSString *str = [[NSString alloc] init]; //初始化===================== NSString *str0 = @"Hello World"; NSString *str1 = [[NSString alloc] initWithFormat:@"%@",str0]; /

iOS AES128 CBC No Padding加密解密

半城伤御伤魂 提交于 2020-04-02 08:24:04
最近的项目中数据传输用到加密,项目选择了AES128 CBC No Padding加密方式,PHP和Android方面的代码网上太多了。但是唯独没有iOS的,但是也有别的写法,但不是是AES128 CBC No Padding或者不是CBC No Padding。自己仿照着写了个,不过PHP端总是解密不出。问题就处在No Padding. No Pading的情况下,一定要对加密数据不是kCCKeySizeAES128倍数部分进行0x0000的填充,不然加密长度不正确,一般情况下选择使用kCCOptionPKCS7Padding(也就是0x0001)进行填充,但是我们是No Padding所以要用0x0000填充。加密后再对加密数据进行了Base64加密,用到了google的GTMBase64,没有的网上自己找,下面上ios的代码: DES3Util.h内容 // // DES3Util.h // JuziAnalyticsDemo // // Created by wanyakun on 13-6-6. // Copyright (c) 2013年 The9. All rights reserved. // #import <Foundation/Foundation.h> @interface DES3Util : NSObject + (NSString*)

AES加密解密

送分小仙女□ 提交于 2020-04-01 05:51:56
在网络请求中许多项目用到了AES加密解密,最近遇到了就顺便写下来,方便记忆。 1、首先下载AESCrypt第三方库,下载下来后编译会报错,需把NSData + CommonCypto.m这个文件添加-fon-objc-arc 2.导入头文件#import "AESCrypt.h" NSString *str = @"uiuberug823u8gno3"; (随意写一个密码) //加密可对字符串,字典等类型进行加密 NSString *string = @"hello"; //对string进行加密 NSString *encstring = [AESCrypt encrypt:string password:str]; //解密 NSString *decstring = [AESCrypt decrypt:encstring password:str]; 来源: https://www.cnblogs.com/ganjinjin/p/5075588.html

iOS-关于GCD信号量那些事儿

随声附和 提交于 2020-03-30 19:55:48
随便说说 其实GCD大家都有接触过,也不在解释GCD是什么,为什么突然想说信号量问题,最近这几次面试,当我问到面试者怎么处理多个请求完成后的一系列操作时,有的说造一个临时变量的做追加,其实这样可以,也算是信号量的基本逻辑,有的说用线程做延时操作,怎么延时,怎么操作说的不清楚,有少部分会提到GCD信号量,但是可能说不出来怎么操作,通过信号量的增加与递减,进行网络的并发请求,最后再做网络请求完成后的最终处理;其实实际上大家在做的时候,在网上一搜,基本都能找到; GCD信号量的应用场景,一般是控制最大并发量,控制资源的同步访问,如数据访问,网络同步加载等 简单聊聊 ///创建 dispatch_semaphore_create() ///增加 dispatch_semaphore_signal() ///减去 dispatch_semaphore_wait() 下面用简单的栗子模拟多个网络请求,再进行最终的操作 //创建信号量 dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); //创建队列 dispatch_queue_t queue = dispatch_get_global_queue(0, 0); //创建线程组 dispatch_group_t group = dispatch_group_create(

NSString常用用法

柔情痞子 提交于 2020-03-30 04:45:21
/————————————————————————————/ 【NSString】常用用法 /————————————————————————————/ NSString的创建、从File中、从URL中 http://www.cnblogs.com/blackwhitex/p/3611125.html int a = str1.intValue;//字符串转int类型,同样也可以charValue、floatValue、doubleValue、boolValue 等 int len = str1.length;//取字符串长度 if([str1 isEqualToString:str2] ) //判断字符串是否相等 //获取字符串中的单个字符 - (unichar)characterAtIndex:(NSUInteger)index; char a = [str1 characterAtIndex:0]; //比较字符串大小 long a = [str1 compare:str2]; if (a == NSOrderedAscending) { NSLog(@"小于"); } else if(a == NSOrderedSame) { NSLog(@"等于"); } else { NSLog(@"大于"); } /* typedef NS_ENUM(NSInteger,

IOS中通知中心(NSNotificationCenter)的使用总结

无人久伴 提交于 2020-03-30 04:23:31
IOS中通知中心NSNotificationCenter应用总结 一、了解几个相关的类 1、 NSNotification 这个类可以理解为一个消息对象,其中有三个成员变量。 这个成员变量是这个消息对象的唯一标识,用于辨别消息对象。 @property (readonly , copy ) NSString *name; 这个成员变量定义一个对象,可以理解为针对某一个对象的消息。 @property (readonly , retain ) id object; 这个成员变量是一个字典,可以用其来进行传值。 @property (readonly , copy ) NSDictionary *userInfo; NSNotification的初始化方法: - ( instancetype)initWithName:( NSString *)name object:( id)object userInfo:( NSDictionary *)userInfo; + ( instancetype)notificationWithName:( NSString *)aName object:( id)anObject; + ( instancetype)notificationWithName:( NSString *)aName object:( id)anObject userInfo

iOS开发之时间格式的转化

纵然是瞬间 提交于 2020-03-27 18:23:34
在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理。 例如:如何将格式为“12-May-14 05.08.02.000000 PM”的时间转化成“2014/05/12 5:08:02”,下面是具体实现代码: NSString* timeStr = @"12-May-14 05.08.02.000000 PM"; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:@"dd-MMMM-yy hh.mm.ss.ssssss aa"];//设置源时间字符串的格式 NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];//设置时区 [formatter setTimeZone:timeZone]; NSDate* date = [formatter dateFromString:timeStr];/

iPhone rangeOfString

混江龙づ霸主 提交于 2020-03-27 07:04:42
问题 Hello I have a string like this: Results for: 123D12 2010 2009 2008 2007 2006 YEAR: 2006 WEEK: 2 PRODIDNUM: 37911 ACCESSKEY: FA3540B52F 2005 2004 YEAR: 2004 WEEK: 22 PRODIDNUM: 46178 ACCESSKEY: 58B2509373 and I want to spot the ACCESSKEY to help me get the hexadecimal(in this case are FA3540B52F and 58B2509373). The issue is that when I use rangeOfString to get the accesskey it stops only to the first one! This is my code: if ([strippedString rangeOfString:@"ACCESSKEY"].location != NSNotFound

CAEmitterLayer

不羁岁月 提交于 2020-03-26 06:38:30
-( void )createFireworks{ CAEmitterLayer *fireworks = [ CAEmitterLayer layer ]; fireworks. emitterPosition = CGPointMake ( Width / 2 , Height - 30 ); fireworks. emitterSize = CGSizeMake ( 100 , 100 ); fireworks. emitterMode = kCAEmitterLayerOutline ; fireworks. emitterShape = kCAEmitterLayerLine ; fireworks. renderMode = kCAEmitterLayerAdditive ; fireworks. seed = ( arc4random () % 100 ) + 1 ; //ROCKET CAEmitterCell *rocket = [ CAEmitterCell emitterCell ]; rocket. birthRate = 0.5 ; // 发射粒子的间隔时间 rocket. emissionRange = 0.25 * M_PI ; rocket. velocity = 480 ; // 粒子飞行速度 rocket. velocityRange = 100