• [Xcode 实际操作]七、文件与数据-(3)创建文本文件、属性列表文件、图片文件


    目录:[Swift]Xcode实际操作

    本文将演示如何创建各种类型的文件。

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

     1 import UIKit
     2 
     3 class ViewController: UIViewController {
     4 
     5     override func viewDidLoad() {
     6         super.viewDidLoad()
     7         // Do any additional setup after loading the view, typically from a nib.
     8         //调用方法,用来创建文本文件
     9         self.writeText()
    10         //调用个方法,用来将数组对象,存储为一个属性列表文件
    11         self.writeArray()
    12         //调用个方法,用来将字典对象,存储为一个属性列表文件
    13         self.writeDictionary()
    14         //调用个方法,用来存储图片文件
    15         self.writeImage()
    16     }
    17     
    18     //创建一个方法,用来创建文本文件
    19     func writeText()
    20     {
    21         //创建一个字符串对象,该字符串对象表示文档目录下的一个文本文件
    22         let filePath:String = NSHomeDirectory() + "/Documents/swift.txt"
    23         //再创建一个字符串对象,用来存储将要写入到文本的内容
    24         let info = "i'm the author ,my name is Strengthten"
    25         
    26         //首先创建一个异常捕捉语句,用来创建一个新的文件夹
    27         do
    28         {
    29             //使用try语句,将文字内容,写入到指定位置的文本文件,
    30             //并使用指定的编码方式
    31             try info.write(toFile: filePath, atomically: true, encoding: .utf8)
    32             //在控制台打印输出日志,提示文本文件创建成功
    33             print("Success to write a file.
    ")
    34         }
    35         catch
    36         {
    37             //在控制台打印输出日志,提示文本文件创建失败
    38             print("Error to write a file.
    ")
    39         }
    40     }
    41     
    42     //创建一个方法,用来将数组对象,存储为一个属性列表文件
    43     func writeArray()
    44     {
    45         //初始化一个数组对象,该数组拥有三个字符串对象。
    46         //数组存储在相同类型的数值有序表内
    47         let fruits = NSArray(objects: "Apple", "Banana", "Orange")
    48         //创建一个字符串对象,
    49         //该字符串对象表示文档目录下的一个属性列表文件
    50         let fruitsPath:String = NSHomeDirectory() + "/Documents/fruitsPath.plist"
    51         //将数组对象,存储在指定位置的属性列表文件中
    52         fruits.write(toFile: fruitsPath, atomically: true)
    53         //在控制台打印输出日志,提示属性列表文件创建成功
    54         print("Success to write an array.
    ")
    55     }
    56     
    57     //创建一个方法,用来将字典对象,存储为一个属性列表文件
    58     func writeDictionary()
    59     {
    60         //创建一个字典对象,字典对象拥有字符串类型的键和值。
    61         //字典对象存储相同类型值的无序集合。
    62         //可以通过一个唯一标识符(也成为密钥)进行访问和查阅
    63         var dictionary : Dictionary<String, String>
    64         //给字典对象添加两个键值对
    65         dictionary = ["Software":"Xcode","Language":"Swift"]
    66         //将Swift语音中的字典对象,转换为旧类型的字典对象
    67         let products = dictionary as NSDictionary
    68         //创建一个字符串对象,该字符串对象表示文档目录下的一个属性列表文件
    69         let productsPath:String = NSHomeDirectory() + "/Documents/products.plist"
    70         //将字典对象,存储在指定位置的属性列表文件中
    71         products.write(toFile: productsPath, atomically: true)
    72         //在控制台打印输出日志,提示属性列表文件创建成功
    73         print("Success to write a dictionary.
    ")
    74     }
    75     
    76     //创建一个方法,用来存储图片文件
    77     func writeImage()
    78     {
    79         //创建一个字符串对象,
    80         //该字符串对象表示文档目录下的一个图片文件
    81         let imagePath:String = NSHomeDirectory() + "/Documents/Pic.png"
    82         //在实际工作中,经常需要将来自服务器的图片,缓存到本地。
    83         //这里选择加载一张资源文件夹中的图片。作为示例图片
    84         let image = UIImage(named: "Pic1")
    85         //将图片内容进行压缩,并转换为二进制内容
    86         let imageData:Data = image!.pngData()!
    87         //然后将二进制内容,存储到指定位置的文件中
    88         try? imageData.write(to: URL(fileURLWithPath: imagePath), options: [.atomic])
    89         //在控制台打印输出日志,提示图片文件创建成功
    90         print("Success to write an image.
    ")
    91     }
    92     
    93     override func didReceiveMemoryWarning() {
    94         super.didReceiveMemoryWarning()
    95         // Dispose of any resources that can be recreated.
    96     }
    97 }
  • 相关阅读:
    栈和队列
    数组的遍历查找
    字符串的子串
    两个字符串
    字符串的遍历
    字符串的替换
    数组和矩阵
    Django 自带的ORM增删改查
    what's the CRSF ??
    Rabbitmq -Publish_Subscribe模式- python编码实现
  • 原文地址:https://www.cnblogs.com/strengthen/p/10048256.html
Copyright © 2020-2023  润新知