Swift--加载本地资源文件并遍历

开始上手Swift,之前的OC是门弱语言,而Swift是强语言,在语法上有较大的不同之处。

// json文件
[
 {
    "name": "json1",
    "title": "测试1",
 },
 {
     "name": "json2",
     "title": "测试2",
 },
 {
     "name": "json3",
     "title": "测试3",
 }
 ]
        /*
         * 加载本地文件
         */

        // 1.获取文件路径
        let path = NSBundle.mainBundle().pathForResource("plist.json", ofType: nil)
        // 2.通过文件路径创建NSData
        if let jsonPath = path {
            let jsonData = NSData(contentsOfFile: jsonPath)

            // 带throws的方法需要抛异常
            do {
                /*
                 * 有可能发生异常的代码放在这
                 */
                // 3.序列化 data -> array
                /*
                 * try 和 try! 的区别
                 * try 发生异常会跳到catch代码中
                 * try! 发生异常程序会直接crash
                 */
                let dictArr = try NSJSONSerialization.JSONObjectWithData(jsonData!, options: NSJSONReadingOptions.MutableContainers)
                // 4.遍历数组
                // 在Swift中遍历数组,必须明确数据的类型 [[String: String]]表示字典里键值都是字符串 [[String]]表示数组里都是字符串
                for dict in dictArr as! [[String: String]] {

                    print(dict)
                }
            }catch {
                // 异常代码放在这
                print(error)
            }
        }
时间: 2024-08-04 05:27:58

Swift--加载本地资源文件并遍历的相关文章

Struts2的国际化(二)-利用超链接实现动态加载国际化资源文件

原理:程序是根据Locale来确定国际化资源文件,因此关键之处在于知道 Struts2 框架是如何确定 Local 对象的 ! 由于Struts2 使用 i18n 拦截器处理国际化,并且将其注册在默认的拦截器中,因此,可以通过阅读 I18N 拦截器知道. 具体确定 Locale 对象的过程: > Struts2 使用 i18n 拦截器 处理国际化,并且将其注册在默认的拦截器栈中 > i18n拦截器在执行Action方法前,自动查找请求中一个名为 request_locale 的参数. 如果该参

WebView加载本地Html文件并实现点击效果

Webview是用来与前端交互的纽,可以加载本地Html文件,和网页并实现交互的功能. WebView通过WebSetting可以使用Android原生的JavascriptInterface来进行js和java的通信. 加载本地文件:webView.loadUrl("file:///android_asset/xxx.html"); 加载网页:webView.loadUrl("http://baidu.com"); 案例:(WebView加载本地Html并实现与J

iOS WebView 加载本地资源(图片,文件等)

NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.docx" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); //webview加载本地文件,可以使用加载数据的方式 //第一个诶参数是一个NSData, 本地文件对应的数据 //第二个参数是MIMEType //第

UIWebView加载本地HTML文件

写本文的原因是今天被要求「调研在iOS中加载本地HTML的相关技术」,好记性不如烂笔头,将一些东西给记录下来吧. 应用场景是这样的:手头的iOS App有一部分UI需要使用HTML完成,好处是这部分UI可以更灵活,即可以在任何不需要升级App的情况下更新这部分UI(包括样式.操作等等).当下非常火的技术 – Facebook的React Native – 正是用来解决这种问题的,毕竟在传统的开发模式下,更新UI必须要升级App,而升级App是一个非常耗时的过程.使用Web App部分代替Nati

Hadoop加载自有资源文件

在hadoop中,使用configuration的时候,首先自动加载了默认的配置文件,比如core-default.xml.core-default.xml资源文件,代码如下: <span style="font-family:Microsoft YaHei;font-size:14px;">static{ //print deprecation warning if hadoop-site.xml is found in classpath ClassLoader cL

JavaEE SSH框架整合(二) struts2 加载本地dtd文件,action配置

1. 加载struts2的dtd文件,使struts.xml不用联网就能验证,并在eclipse中有提示 在src下创建struts.xml: <?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPE strutsPUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://strut

加载web资源文件

servlet编程: 1.servlet生命周期: 构造方法:创建servlet对象.默认情况下,第一次访问servlet对象时.只调用一次. init方法(有参):创建完servlet对象后调用.只调用一次. 注意:会调用无参的init方法 servlet方法:servlet提供服务的方法,每次发出请求调用. 注意:request对象,response对象 destory方法:tomcat服务器停止或web应用重新部署,servlet对象销毁,destory方法被调用 2.servletCon

如何让Chrome浏览器可以加载本地XML文件?

Chrome浏览器的安全限制,禁止本地加载XML等外部文件,如何设置让其可以加载呢? 有两种方法,第一种是在本地服务器环境下浏览,采用 http://localhost/ 的方式浏览你的网页和文件,就 Chrome浏览器的安全限制,禁止本地加载XML等外部文件,如何设置让其可以加载呢? 有两种方法, 第一种是在本地服务器环境下浏览,采用http://localhost/的方式浏览你的网页和文件,就不再有本地安全限制的问题了. 第二种方法,采用设置参数方式来启动Chrome浏览器. 在已安装的Ch

iOS学习 - 23 加载本地 txt文件,NSMutableParagraphStyle 段落格式,缩放动画

思路: 1.new 一个 Empty 后缀为 .txt 文件,内容随笔拷贝一段 2.用 NSString 接收本地文件,再用一个标题拼接字符串 3.创建一个 NSMutableParagraphStyle 实例,设置标题居中.标题距离正文间隔 4.创建一个 NSMutableParagraphStyle 实例,设置正文左对齐.每段开头缩进 10 5.创建一个基础动画的实例,用代理监听动画结束 话不多说上代码 #pragma mark -- 拼接字符 - (void)loadData:(NSStr