视频存储不了,当可以存储后又无法通过ID判断输出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | #define NSLog(FORMAT, ...) fprintf(stderr,"%s",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]) #import <Foundation/Foundation.h> #import "UsernameandPassword.h" int main( int argc, const char * argv[]) { @autoreleasepool { NSLog(@ "******************iOS学习系统注册界面******************\n" ); UsernameandPassword *u1 = [[UsernameandPassword alloc]init]; UserAdministration *ua = [[UserAdministration alloc]init]; [ua Userregistration]; u1.userAd = ua; [u1 UserSignin]; [u1 FunctionSelection]; } return 0; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | #import <Foundation/Foundation.h> #import "UserAdministration.h" @interface UsernameandPassword : NSObject @property(nonatomic,strong)NSString *Username; @property(nonatomic,strong)NSString *Password; @property(nonatomic,strong)UserAdministration *userAd; @property(nonatomic,strong)NSString *addvideoID; @property(nonatomic,strong)NSString *addvideoname; @property(nonatomic,strong)NSMutableArray *addv; -( void )UserSignin; -( void )FunctionSelection; -(id)initWithAddv:(NSMutableDictionary *)addv AddvideoID:(NSString *)addvideoID Addvideoname:(NSString *)addvideoname; @end |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 | #define NSLog(FORMAT, ...) fprintf(stderr,"%s",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]) @implementation UsernameandPassword /* -(id)initWithAddv:(NSMutableDictionary *)addv AddvideoID:(NSString *)addvideoID Addvideoname:(NSString *)addvideoname{ self = [super init]; if (self) { self.addv = addv; self.addvideoID = addvideoID; self.addvideoname = addvideoname; } return self; } */ -( void )UserSignin{ //用户登录 NSLog(@ "******************iOS学习系统登录界面******************\n" ); NSLog(@ "是否登录:\n1登录\n2不登录\n" ); //登录选项 int LoginOptions = 0; scanf ( "%d" ,&LoginOptions); if (LoginOptions == 1) { //用户名 NSLog(@ "请输入登录用户名:" ); char buffer1[1000]; scanf ( "%s" ,buffer1); NSString * youname = [NSString stringWithUTF8String:buffer1]; //用户密码 NSLog(@ "请输入登录密码:" ); char buf2[1000]; scanf ( "%s" ,buf2); NSString * youpassword = [NSString stringWithUTF8String:buf2]; //判断输入的用户名和密码是否和注册时的一致 if (youname == self.userAd.flag && youpassword == self.userAd.fla){ NSLog(@ "\n登录成功\n" ); NSLog(@ "******************iOS学习系统功能选择界面******************\n" ); NSLog(@ "请输入要选择的功能\n" ); } else { NSLog(@ "用户名或密码错误,请重新输入\n" ); [self UserSignin]; } } else { NSLog(@ "退出学习系统\n" ); } } -( void )FunctionSelection{ NSMutableDictionary *addv = [[NSMutableDictionary alloc]init]; //登录后功能选择:1>1>2>1 这样就可以一直循环 //登录后操作 NSLog(@ "1 观看iOS学习视频\n2 下载iOS学习资料\n3 直接退出\n" ); //功能选择 int a = 1; int b = 0; while (a > b) { int Function = 0; scanf ( "%d" ,&Function); if (Function == 1) { NSLog(@ "视频为空\n观看iOS学习视频中……\n请输入要选择的功能:\n" ); NSLog(@ "1 观看iOS学习视频\n2 下载iOS学习资料\n3 直接退出\n" ); //观看视频 int WatchVideo = 0; scanf ( "%d" ,&WatchVideo); if (WatchVideo == 1) { NSLog(@ "1 查询所有iOS视频\n2 通过ID选择播放某一iOS视频\n3 添加一个新的iOS视频\n4 删除某一iOS视频\n" ); //通过ID播放视频 int IdPlay = 0; scanf ( "%d" ,&IdPlay); if (IdPlay == 1) { NSLog(@ "观看iOS学习视频中……\n" ); } else if (IdPlay == 2){ NSLog(@ "请输入要选择观看的视频ID\n" ); //播放ID视频 // int VideoiD = 0; // scanf("%d",&VideoiD); char VID[1000]; scanf ( "%s" ,VID); NSString *VideoiD = [NSString stringWithUTF8String:VID]; if (VideoiD == 1) { NSLog(@ "你查找的视频不存在\n观看学习视频中……\n请输入要选择的功能:\n" ); NSLog(@ "1 观看iOS学习视频\n2 下载iOS学习资料\n3 直接退出\n" ); } else if (VideoiD == self.addvideoID){ //通过ID查找之前存储的视频 NSArray *str1 = [self.addv valueForKey:self.addvideoID]; NSLog(@ "%@\n" ,str1); NSLog(@ "%@" ,self.addvideoID); [self FunctionSelection]; } } else if (IdPlay == 3){ //添加视频 NSLog(@ "请输入视频ID\n" ); char adv[1000]; scanf ( "%s" ,adv); NSString *addvideoID = [NSString stringWithUTF8String:adv]; NSLog(@ "请输入视频名称\n" ); char advn[1000]; scanf ( "%s" ,advn); NSString *addvideoname = [NSString stringWithUTF8String:advn]; [addv setValue:addvideoname forKey:addvideoID]; NSLog(@ "%@" ,addv); [self FunctionSelection]; } else if (IdPlay == 4){ //删除视频 NSLog(@ "请输入需要删除的视频ID\n" ); // [self.addv removeObjectForKey:addvideoID]; [self FunctionSelection]; } } } else if (Function == 2){ NSLog(@ "1 下载所有iOS视频\n2 通过ID选择下载某一iOS视频\n" ); } else if (Function == 3){ NSLog(@ "退出\n" ); } a++; } } @end |
1 2 3 4 5 6 7 8 9 10 | #import <Foundation/Foundation.h> @interface UserAdministration : NSObject -( void )Userregistration; @property(nonatomic,strong)NSString *flag; @property(nonatomic,strong)NSString *fla; -(id)initWithFlag:(NSString *)flag Fla:(NSString *)fla; @end |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | #import "UserAdministration.h" #import "UsernameandPassword.h" #define NSLog(FORMAT, ...) fprintf(stderr,"%s",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]) @implementation UserAdministration -(id)initWithFlag:(NSString *)flag Fla:(NSString *)fla{ self = [super init]; if (self) { self.flag = flag; self.fla = fla; } return self; } //用户注册信息 -( void )Userregistration{ NSLog(@ "请输入注册用户名:" ); char buffer[1000]; scanf ( "%s" ,buffer); self.flag = [NSString stringWithUTF8String:buffer]; NSLog(@ "请输入注册密码:" ); char buf[1000]; scanf ( "%s" ,buf); self.fla = [NSString stringWithUTF8String:buf]; NSLog(@ "注册成功\n" ); } @end |
118
收起
正在回答 回答被采纳积分+1
2回答
Tender10
2017-12-08 16:58:53
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | -( void )addVideo{ NSLog(@ "请输入要添加的视频名称 \n" ); char buffer[1000]; scanf ( "%s" ,buffer); NSString * name = [NSString stringWithUTF8String:buffer]; NSLog(@ "请输入要添加的视频ID ID不能重复 \n" ); scanf ( "%s" ,buffer); NSString * key = [NSString stringWithUTF8String:buffer]; // 这里将名称和ID存入到可变字典中 NSMutableDictionary *item = [[NSMutableDictionary alloc]initWithObjectsAndKeys:name,key, nil]; // 再将这整个信息作为一个元素存入到存放时频的数组中 [videoArray addObject:item]; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #pragma 根据ID号查询视频 -( void )selectVideoWithID:( int )videoID{ // 用于判断是否有这个视频存在 BOOL hasFind = false ; // 首先从数组中循环遍历取出所有的元素,也就是存放ID和昵称的字典 for (NSMutableDictionary *item in videoArray) { // 判断字典是否为空 if (item != nil && item.allKeys.count != 0) { // 不为空遍历出字典中所有的key即ID号 for (NSString *key in item.allKeys) { // 判断ID号是否和输入的ID号相等,videoID传入的参数即键盘输入的ID号 if (key.intValue == videoID) { // 相等则取出对应ID号的值,即名称 NSString *value = [item objectForKey:key]; // 打印出相关信息 NSLog(@ "视频ID:%@ 视频名称:%@" ,key,value); // 并将hasFind赋值为true,跳出循环 hasFind = true ; break ; } } } } // 如果没有视频,就会判断输出视频不存在 if (!hasFind) { NSLog(@ "您查找的视频不存在" ); } } |
你的代码比较乱,建议一个功能,写在一个方法中,这样随时调用就可以了,如上所示,分功能模块,减少代码的耦合度。
iOS入门:基础语法与常用控件
- 参与学习 1337 人
- 提交作业 712 份
- 解答问题 1878 个
很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧