视频存储不了,当可以存储后又无法通过ID判断输出
#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;
}#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
#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#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
#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");
}
@end118
收起
正在回答 回答被采纳积分+1
2回答
Tender10
2017-12-08 16:58:53
-(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];
}#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积分~
来为老师/同学的回答评分吧
0 星