最基本的操作

//关于目录的获取
//获取沙盒目录(算是跟目录吧)
        NSHomeDirectory()
//获取document目录(常用)
        let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first
    //或者
FileManager().urls(for: .documentDirectory, in: .userDomainMask).first!
//获取library目录
        var libraryPath = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)
//获取caches(缓存目录)目录
        var cachesPath = NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true)
//获取temp目录
        var tempPath = NSTemporaryDirectory()

//关于fileManager对象的常用操作
//创建文件管理员(相当于我们hibernate的sessionFactory)
        let fileManager = FileManager.default
//判读文件或目录是否存在
        let result = fileManager.fileExists(atPath: path)
//新增目录
            try! fileManager.createDirectory(atPath: path,
                withIntermediateDirectories: true, attributes: nil)
//删除目录或文件
            try! fileManager.removeItem(atPath: path)
//创建文件
       fileManager.createFile(atPath: path, contents: nil, attributes: nil)

//关于userDefault的常用操作
//获取userDefault的实例
        let userDefaults = UserDefaults.standard
//往实例里对数据
        userDefaults.set(Date(), forKey: refreshKey)
//数据从实例里取出来并强制回原来类型
        let date = userDefaults.object(forKey: refreshKey) as? Date

//关于创建plist的数组或字典的写入和读取操作
// 构建路径
        let namesPath = "\(documentsPath)/names.plist"

 // 名字的数组
        let names: NSArray = ["aaa", "bbb", "ccc", "maizixueyuan"]
        names.write(toFile: namesPath, atomically: true)

 // 读取数据,输出结果
        let entries = NSArray(contentsOfFile: namesPath)!
        print(entries)
//------------------------------
// 构建路径
        let studentsPath = "\(documentsPath)/students.plist"

// 学生的字典
        let students: NSDictionary = ["sno": "1101", "name": "maizixueyuan", "score": 100]
        students.write(toFile: studentsPath, atomically: true)

 // 读取数据,输出结果
        let data = NSDictionary(contentsOfFile: studentsPath)!
时间: 2024-10-08 17:21:43

最基本的操作的相关文章

如何用一个app操作另外一个app.比如微信群控那样的

如何实现一个app.控制另外的app,比如市面上群控微信的,是用测试工具的原理?还是什么模拟点击的原理? 如何用一个app操作另外一个app.比如微信群控那样的 >> android 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/android/1010000007186891/如何用一个app操作另外一个app比如微信群控那样的.html

ELK 学习笔记之 elasticsearch Mget操作

Mget操作: 查询多个文档: curl -XGET 'http://192.168.1.151:9200/_mget' -d '{"docs": [{"_index": "library","_type": "books", "_id": "1"}, {"_index": "library","_type"

条件、循环、函数定义、字符串操作练习

注意标准库的两种导入与使用方式,建议大家采用<库名>.<函数名>的方式. 对前面的代码进行优化,用for,while,if,def实现: 用循环画五角星 1 import turtle 2 3 turtle.fillcolor("red") 4 turtle.begin_fill() 5 for i in range(5): 6 turtle.forward(100) 7 turtle.right(144) 8 turtle.end_fill() 用循环画同心圆

Python 文件操作

操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 文件句柄 = open('文件路径', '模式') 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读: 不存在则创建:存在则只追加内容:] "+" 表示可以同时读写某个文件 r+,可读写文件.[可读:可写:可追加] w+,写读 a+,

Python操作数据库(mysql redis)

一.python操作mysql数据库: 数据库信息:(例如211.149.218.16   szz  123456) 操作mysql用pymysql模块 #操作其他数据库,就安装相应的模块 import  pymysql ip='211.149.218.16' port=3306 passwd='123456' user='root' db='szz' conn=pymysql.connect(host=ip,user=user,port=port,passwd=passwd,db=db,cha

数据库权限分配操作

1.远程登录mysqlmysql -h ip -u root -p 密码2.创建用户格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能.需要在mysql的root用户下进行mysql>grant select,insert,update,delete on *.* to [email protected]&quo

Django(三) ORM 数据库操作

比较有用 转自 http://blog.csdn.net/fgf00/article/details/53678205 一.DjangoORM 创建基本类型及生成数据库表结构 1.简介 2.创建数据库 表结构 二.Django ORM基本增删改查 1.表数据增删改查 2.表结构修改 三.Django ORM 字段类型 1.字段类型介绍 2.字段参数介绍 3.Django ORM 外键操作 一.DjangoORM 创建基本类型及生成数据库表结构 1.简介 ORM:关系对象映射.定义一个类自动生成数

python操作mysql ------- SqlAchemy正传

本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 下载安装 pip3 install pymysql 使用操作 1.执行SQL #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1

SQLServer数据库自增长标识列的更新修改操作

SQLServer数据库自增长标识列的更新修改操作方法在日常的sql server开发中,经常会用到Identity类型的标识列作为一个表结构的自增长编号.比如文章编号.记录序号等等.自增长的标识列的引用很大程度上方便了数据库程序的开发,但是有时这个固执的字段类型也会带来一些麻烦. 一.修改标识列字段的值:(在执行insert时,将ID手动的设置成想要的值)有时,为了实现某个功能,需要修改类型为Identity自增长类型的字段的值,但由于标识的类型所限,这种操作默认是不允许的.比如,目前数据库有

对IO流的操作(文件大小,拷贝,移动,删除)

import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.SequenceInputStream; class LjyFileClass { /*LjyFileClass工具类使用需知: * * 1.计算