怎么读取bundle中的n文件层次ios
IOS复习NSBundle读取数据
NSBundle读取图片到视图上,读取plist文件,读取txt文件显示在lable上;
bundle是一个目录,其中包含了程序会使用到的资源. 这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in). 对应bundle,cocoa提供了类NSBundle.
我们的程序是一个bundle. 在Finder中,一个应用程序看上去和其他文件没有什么区别. 但是实际上它是一个包含了nib文件,编译代码,以及其他资源的目录. 我们把这个目录叫做程序的main bundle
bundle中的有些资源可以本地化.例如,对于 foo.nib,我们可以有两个版本: 一个针对英语用户,一个针对法语用户. 在bundle中就会有两个子目录:English.lproj和French.lproj,我们把各自版本的 foo.nib文件放到其中. 当程序需要加载foo.nib文件时,bundle会自动根据所设置的语言来加载.
NSBundle束,是一种特定的文件类型,其中的内容遵循特定的结构。
NSBundle的一个主要作用是 获取Resources文件夹中的资源。
NSBundle 对象代表了文件系统中的一个位置,这个位置存放的是我们程序的代码和资源。NSBundel 对象同时本地化程序资源,动态加载和卸载可执行代码,及本地化支持。有三种束,分别是面向应用程的、面向框架的和面向插件的;
上面都是来自互联网,具体博客忘记了,太多了,下次把我学习的博客,书籍也总结出来
首先新建Single View Application项目,名称NSbundleStudy
然后拖拽一张图片到项目,我添加的是@@_@@2 _2.png
拖拽方法是按command+option+a快捷键
由于我没有重命名,有点麻烦。下面红框一定要勾选,那是复制文件到项目,如果不够选只不过是添加了一个引用,就好比copy和引用了指针的区别一样,
在chenViewController.m添加代码到- (void)viewDidLoad方法,如下
- (void)viewDidLoad
{
[superviewDidLoad];
//定义一个NSBundle对象获取得到应用程序的main bundle
NSBundle *mainBundle=[NSBundle mainBundle];
//用对象mainBundle获取图片路径
NSString *imagePath=[mainBundle pathForResource:@"@@_@@2_2" ofType:@"png"];
UIImage *image = [[UIImage alloc] initWithContentsOfFile:imagePath];
NSLog(@"imagepath:%@",imagePath);
UIImageView *imageView = [[UIImageView alloc]initWithImage:image];
CGRect frame = CGRectMake(10, 10, 300, 440);
imageView.frame=frame;
[self.view addSubview:imageView];
//这是mainBundle获取 imagepath的路径,控制台输出的
imagepath:/Users/chen/Library/Application Support/iPhone Simulator/6.1/Applications/47D65048-94EF-4889-B695-A94A145CCCA2/NSbundleStudy.app/@@_@@2_2.png
}
运行结果如下图
//注意我设置的frame坐标,并不是全屏显示;
顺便复习一下上次读取plist文件
// 获取plist文件路径
NSString *infoPlist = [[NSBundlemainBundle] pathForResource:@"testInfo"ofType:@"plist"];
// 将testInfo.plist文件内容读取到字典中
NSDictionary *dic = [[NSDictionaryalloc] initWithContentsOfFile:infoPlist];
// 打印dic中所有内容
NSLog(@"%@",dic);
// 打印键值为key4的值
NSLog(@"key4=%@",[dic objectForKey:@"key4"]);
补充下,key4是testInfo.plist文件中对应的一个键值
//接着学习mainBundle读取txt文件,然后把它显示在lable上,先添加一个有内容txt文件;读取txt文件和上面例子一样,再次想说一下如何显示在label上,如果txt中内容太多需要换行
command+n快捷键新建文件叫text.txt
在里面添加内容,随便添加
NSBundle读取图片到视图上,读取plist文件,读取txt文件显示在lable上;
bundle是一个目录,其中包含了程序会使用到的资源. 这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in). 对应bundle,cocoa提供了类NSBundle.
我们的程序是一个bundle. 在Finder中,一个应用程序看上去和其他文件没有什么区别. 但是实际上它是一个包含了nib文件,编译代码,以及其他资源的目录. 我们把这个目录叫做程序的main bundle
bundle中的有些资源可以本地化.例如,对于 foo.nib,我们可以有两个版本: 一个针对英语用户,一个针对法语用户. 在bundle中就会有两个子目录:English.lproj和French.lproj,我们把各自版本的 foo.nib文件放到其中. 当程序需要加载foo.nib文件时,bundle会自动根据所设置的语言来加载.
NSBundle束,是一种特定的文件类型,其中的内容遵循特定的结构。
NSBundle的一个主要作用是 获取Resources文件夹中的资源。
NSBundle 对象代表了文件系统中的一个位置,这个位置存放的是我们程序的代码和资源。NSBundel 对象同时本地化程序资源,动态加载和卸载可执行代码,及本地化支持。有三种束,分别是面向应用程的、面向框架的和面向插件的;
上面都是来自互联网,具体博客忘记了,太多了,下次把我学习的博客,书籍也总结出来
首先新建Single View Application项目,名称NSbundleStudy
然后拖拽一张图片到项目,我添加的是@@_@@2 _2.png
拖拽方法是按command+option+a快捷键
由于我没有重命名,有点麻烦。下面红框一定要勾选,那是复制文件到项目,如果不够选只不过是添加了一个引用,就好比copy和引用了指针的区别一样,
在chenViewController.m添加代码到- (void)viewDidLoad方法,如下
- (void)viewDidLoad
{
[superviewDidLoad];
//定义一个NSBundle对象获取得到应用程序的main bundle
NSBundle *mainBundle=[NSBundle mainBundle];
//用对象mainBundle获取图片路径
NSString *imagePath=[mainBundle pathForResource:@"@@_@@2_2" ofType:@"png"];
UIImage *image = [[UIImage alloc] initWithContentsOfFile:imagePath];
NSLog(@"imagepath:%@",imagePath);
UIImageView *imageView = [[UIImageView alloc]initWithImage:image];
CGRect frame = CGRectMake(10, 10, 300, 440);
imageView.frame=frame;
[self.view addSubview:imageView];
//这是mainBundle获取 imagepath的路径,控制台输出的
imagepath:/Users/chen/Library/Application Support/iPhone Simulator/6.1/Applications/47D65048-94EF-4889-B695-A94A145CCCA2/NSbundleStudy.app/@@_@@2_2.png
}
运行结果如下图
//注意我设置的frame坐标,并不是全屏显示;
顺便复习一下上次读取plist文件
// 获取plist文件路径
NSString *infoPlist = [[NSBundlemainBundle] pathForResource:@"testInfo"ofType:@"plist"];
// 将testInfo.plist文件内容读取到字典中
NSDictionary *dic = [[NSDictionaryalloc] initWithContentsOfFile:infoPlist];
// 打印dic中所有内容
NSLog(@"%@",dic);
// 打印键值为key4的值
NSLog(@"key4=%@",[dic objectForKey:@"key4"]);
补充下,key4是testInfo.plist文件中对应的一个键值
//接着学习mainBundle读取txt文件,然后把它显示在lable上,先添加一个有内容txt文件;读取txt文件和上面例子一样,再次想说一下如何显示在label上,如果txt中内容太多需要换行
command+n快捷键新建文件叫text.txt
在里面添加内容,随便添加
佚名
2024-05-29 19:54:49
类似问题(10)
-
佚名2024-05-29 16:46:30
问家n次方中赵文的手机
答iphone4
-
佚名2024-05-29 12:43:01
问HBuilder 打包生成APP的时候可以生成 IOS的 Bundle ID吗
答一、预备环境iOS开发环境,Mac OS、XCode5.0以上版本;下载HBuilder离线打包iOS版SDK(5+ SDK下载)。SDK目录说明:HBuild...
-
佚名2024-05-29 18:43:21
问ios 腾讯开放平台移动应用ios平台里bundle identifiter怎么填
答就是你app的报名 ,在app的plist.info 中的 identifiter , 注册之后的key对应你的 identifiter ,不匹配不能用第三方登...
-
佚名2024-05-29 08:15:09
问为什么ios程序的settings bundle什么时候调用
答在Android手机上, 在某个程序里,通过按Menu键,一般都会打开这个程序的设置,而在iOS里,系统提供了一个很好的保存程序设置的机制。就是使用Settin...
-
佚名2024-05-29 07:01:05
问iOS中的framework和bundle有什么区别?大神们帮帮忙
答framework是库支持,是系统的,bundle是一个安装包,里面可以放一些图片,也就是你的应用程序的安装包。 查看原帖>>
-
佚名2024-05-29 07:57:03
问如何隐藏 iOS 文件夹名称
答这得运用一些特殊字符了,按我的步骤做:1:QQ复制任意一个自带表情2:粘贴到文件夹,删除看得见的字符(不要按多了)3:成功
-
佚名2024-05-29 17:24:48
问怎样上传文件到群共享啊?我试了N次、老是失败
答可能是系统或什么问题 你重新登录一下 然后再试 群窗口上方有分享图标。。望采纳
-
佚名2024-05-29 08:00:00
问日文中的中文字怎么读?
答汉字有两种读法,一种音读,一种训读音读比较接近汉语读音,比如【天空】(てん くう)听起来很像训读是日本贯有的读法,只是借了汉字,比如【空】单个就读そら大致是这样...
-
佚名2024-05-29 08:00:00
问怎么用bat读取文件名为变量
答怎么用bat读取文件(ID.txt)内容为变量for /f "tokens=*" %%a in (id.txt) do (set var=%%aecho %va...
-
佚名2024-05-29 08:00:00
问CDR文件读取错误打不开怎么办
答文件过大吧,你是用coreldraw几打开的? 用9试试,因为你如果是9的cd文件,用12啊什么的打开的话就会有一个转换过程,出错很正常。你下载一个cd9试一下...
风水
起名
网名
- 1 香韵 网名
- 2 扣扣红包和网名不一样
- 3 网名水柔的含义是什么意思
- 4 薛瑞萍_网名:看云
- 5 女生四个字网名q友乐园
- 6 微博昵称可以用自己名字
- 7 电话号码给老公一个昵称
- 8 昵称带奈
- 9 好听的cf两字昵称
- 10 qq飞车好听二字昵称
说说
- 1 蒋欣的个性签名
- 2 经常想你的个性签名
- 3 觉得自己很孤独的个性签名
- 4 回家qq签名
- 5 爱上已婚女人说说
- 6 不参与纷争的说说
- 7 不要对一个人好的说说
- 8 关于男朋友虚假的说说
- 9 正月各种吃的说说
- 10 让我陪着你说说英语