如何通过字典保存视频的名称和ID

如何通过字典保存视频的名称和ID


通过字典保存视频的名称和ID,然后在将字典存储在数组中,查询的时候,通过数组遍历取出所有的字典,并进行输出即可。

在这个作业里我不知道该如何运用字典,然后把它存储到数组中,助教给点提示嘛


http://img1.sycdn.imooc.com//climg/5a1d634c0001f25703300146.jpg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 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];
                 
                NSMutableDictionary *addv = [[NSMutableDictionary alloc]init];
                NSString *item = [addv valueForKey:addvideoname];
                [addv setValue:addvideoID forKey:item];
                NSLog(@"%@",addv);

怎样才可以在控制台输入中文呢


----------------------------------------------------------------------------------------------------------------------------------------------

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
NSLog(@"请输入视频ID\n");
                 
                char adv[1000];
                scanf("%s",adv);
                self.addvideoID = [NSString stringWithUTF8String:adv];
                 
                NSLog(@"请输入视频名称\n");
                 
                char advn[1000];
                scanf("%s",advn);
                self.addvideoname = [NSString stringWithUTF8String:advn];
                
                 
                [self.addv setValue:self.addvideoname forKey:self.addvideoID];
                 
                NSLog(@"%@",self.addv);
                [self FunctionSelection];

我改成全局变量后addv的值就变成了空了


http://img1.sycdn.imooc.com//climg/5a1ea5fe00019dcd08610858.jpg


-----------------------------------------------------------2017.11.30---------------------------------------------

http://img1.sycdn.imooc.com//climg/5a1fc2980001289c08650833.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
齐克雷因 2017-11-30 07:18:34

scanf  别忘加 &    图片下半部都没加

Tender10 2017-11-29 16:37:25

char adv[1000];

scanf("%s",adv);

NSString *addvideoID = [NSString stringWithUTF8String:adv];

char advn[1000];

scanf("%s",adv);

NSString *addvideoname = [NSString stringWithUTF8String:advn];

如上不就是你进行用户输入的过程,写上如上的代码就需要在控制台进行输入了,你要是不知道提示,就在输入之前加一个NSLog语句,提示用户比如输入ID之前,加上一个输出语句,提示用户需要输入ID。这里你的addvideoID不就是用户输入的ID,同理addvideoname也是。然后最后[addv setValue:addvideoID forKey:addvideoname];这个不就是进行了存储的过程了。中文字符需要进行字码转换,后面学习的时候会用到不要着急哦。另外,你代码都写好了,有什么是控制台显示不出来的,不知道你是不是自己思维有点混乱了,代码都写好了,跟控制台有什么关系。只要代码写好了,控制台不就可以进行对应的操作了。

  • 提问者 楼上大白 #1
    我存储在字典中的视频名称为什么没遍历出来呢,是因为代码的执行顺序吗?我上传了图片
    2017-11-29 20:21:22
  • Tender10 回复 提问者 楼上大白 #2
    记住跟之前一样,字典也是需要定义成全局变量的,跟之前你要设置登录密码那个思路是相同的。
    2017-11-30 09:33:55
  • 提问者 楼上大白 回复 Tender10 #3
    我定义了全局变量后,保存没问题,但是到了在通过某一ID播放视频的时候,那个值就变成了空,我上传图片你看看
    2017-11-30 14:52:31
Tender10 2017-11-29 10:08:12

1、在项目的提示中就有有关输入字符串的提示啊:如下所示

// 使用一个缓冲区

char buffer[1000];

// 读取控制台的输入信息

scanf("%s",buffer);  

// 接收控制台输入信息(这里是以接收输入的序号为例)

NSString * flag = [NSString stringWithUTF8String:buffer]; 

2、字典存储在前面的课程中其实很详细啊,你输入完以后,不是有key值和value值了嘛,直接使用字典,调用setValue:forKey方法进行存储就可以了啊。

  • 提问者 楼上大白 #1
    我知道这些方法,可是在这里我不知道应该怎么写才行
    2017-11-29 14:53:15
  • 提问者 楼上大白 #2
    比如,我输入了ID3,名称iOS入门,怎么存储进去,我写成这样也只是在代码中写好,并不是在控制台输入的呀[addv setValue:@"" forKey:@"iOS入门"];
    2017-11-29 15:07:06
  • 提问者 楼上大白 #3
    助教,我上传了我写的代码,你看看
    2017-11-29 15:20:54
Tender10 2017-11-28 10:35:30

1、你是不是要让用户输入名称和ID,然后输入完,你是不是就可以通过字典进行存储了,字典是同时存储key和value的,这个在字典讲解的时候应该很详细啊,你直接调用setValue方法进行存储就可以了啊。

2、字典存储在数组中,不是更简单,将字典直接保存在数组中不就可以了,addObject方法。

3、取值for循环遍历取出所有的字典,然后根据key值取出value不就可以了。

  • 提问者 楼上大白 #1
    那怎么才能把输入的内容通过字典来存储
    2017-11-28 20:28:30
  • 提问者 楼上大白 #2
    还有,我怎么才能输入中文的字符
    2017-11-28 20:42:46
  • 提问者 楼上大白 #3
    我上传了图片,你看看我可不可以这样写
    2017-11-28 21:23:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师