// you can set your dynamic count
var a = Array(repeating: Array(repeating: 0, count: 0), count: 3) // set you dynamic value
a[0].append(2)
a[0].append(5)
a[1].append(9)
a[2].append(10)
print(a)
OUTPUT : [[2, 5], [9], [10]]
Apple Developer
// you can set your dynamic count
var a = Array(repeating: Array(repeating: 0, count: 0), count: 3) // set you dynamic value
a[0].append(2)
a[0].append(5)
a[1].append(9)
a[2].append(10)
print(a)
OUTPUT : [[2, 5], [9], [10]]
Store OR Save Image in Document Directory
@objc static func SaveImage(image : UIImage, imageName : String) {
let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let fileName = imageName
let fileURL = documentsDirectory.appendingPathComponent(fileName)
if let data = image.jpegData(compressionQuality: 1.0),
!FileManager.default.fileExists(atPath: fileURL.path) {
do {
try data.write(to: fileURL)
print("file saved")
} catch {
print("error saving file:", error)
}
}
}
How to Use :
ImagePickerManager.SaveImage(image: image, imageName: “one”)
Retrive Image From Document Directory :
@objc static func Retriveimage(name : String) -> UIImage {
let nsDocumentDirectory = FileManager.SearchPathDirectory.documentDirectory
let nsUserDomainMask = FileManager.SearchPathDomainMask.userDomainMask
let paths = NSSearchPathForDirectoriesInDomains(nsDocumentDirectory, nsUserDomainMask, true)
var image: UIImage?
if let dirPath = paths.first
{
let imageURL = URL(fileURLWithPath: dirPath).appendingPathComponent(name)
image = UIImage(contentsOfFile: imageURL.path)
}
return image!
}
How to Use :
imgPicker.image = ImagePickerManager.Retriveimage(name: “one”)
Create , Insert and Dispaly databse in swift.
import UIKit
struct SampleData {
let id : Int
let FirstName : String
let LastName : String
}
class DBManagerrr: NSObject {
let field_ID = "fieldID"
let field_Firstname = "fieldFirstName"
let field_LastName = "FieldLastName"
static let shared: DBManagerrr = DBManagerrr()
let databaseFileName = "databasee.sqlite"
var pathToDatabase: String!
var database: FMDatabase!
override init() {
super.init()
let documentsDirectory = (NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString) as String
pathToDatabase = documentsDirectory.appending("/\(databaseFileName)")
}
// Create Database
func createDatabase(tableName : String) {
if !FileManager.default.fileExists(atPath: pathToDatabase) {
database = FMDatabase(path: pathToDatabase!)
if database != nil {
if database.open() {
let createMoviesTableQuery = "create table \(tableName) (\(field_ID) INTEGER PRIMARY KEY AUTOINCREMENT, \(field_Firstname) text, \(field_LastName) text)"
do {
try self.database.executeUpdate(createMoviesTableQuery, values: nil)
print("Successfully create table.")
}
catch {
print("Could not create table.")
print(error.localizedDescription)
}
database.close()
}
else {
print("Could not open the database.")
}
}
}
}
// OPen database table
func openDatabase() -> Bool {
if database == nil {
if FileManager.default.fileExists(atPath: pathToDatabase) {
database = FMDatabase(path: pathToDatabase)
}
}
if database != nil {
if database.open() {
return true
}
}
return false
}
//Insert Database in to table
func insertSampleData(tableName : String,firstName : String, LastName : String) {
if openDatabase() {
var query = ""
query += "insert into \(tableName) (\(field_Firstname), \(field_LastName)) values ( '\(firstName)', '\(LastName)');"
if !database.executeStatements(query) {
print("Failed to insert initial data into the database.")
print(database.lastError(), database.lastErrorMessage())
}else {
print("Successfully inserted")
}
}
database.close()
}
//Get Single database
func loadSampleData(tableName : String) -> SampleData! {
var sampleModel : SampleData!
if openDatabase() {
let query = "select * from \(tableName)"
do {
print(database)
let results = try database.executeQuery(query, values: nil)
while results.next() {
sampleModel = SampleData.init(id: Int(results.int(forColumn: field_ID)), FirstName: results.string(forColumn: field_Firstname), LastName: results.string(forColumn: field_LastName))
}
}
catch {
print(error.localizedDescription)
}
database.close()
}
return sampleModel
}
//Get All database
func GetAllData(tableName : String) -> [SampleData]! {
var sampleModel : [SampleData]!
if openDatabase() {
let query = "select * from \(tableName)"
do {
print(database)
let results = try database.executeQuery(query, values: nil)
while results.next() {
let sample = SampleData.init(id: Int(results.int(forColumn: field_ID)),
FirstName: results.string(forColumn: field_Firstname),
LastName: results.string(forColumn: field_LastName))
if sampleModel == nil {
sampleModel = [SampleData]()
}
sampleModel.append(sample)
}
}
catch {
print(error.localizedDescription)
}
database.close()
}
return sampleModel
}
}
//How TO USE
//Create Table
DBManagerrr.shared.createDatabase(tableName: “mySample”)
//Inset Data in to table
DBManagerrr.shared.insertSampleData(tableName: “mySample”, firstName: “Test1”, LastName: “Sample1”)
//Get Single DataFrom table
let data = DBManagerrr.shared.loadSampleData(tableName: “mySample”)
print(data!)
//Get All Data from table
let datas = DBManagerrr.shared.GetAllData(tableName: “mySample”)
print(datas!)
let scalarRange: ClosedRange = "\u{1200}" ... "\u{12BF}"
let scalarValueRange = scalarRange.lowerBound.value ... scalarRange.upperBound.value
let SymbolArray = scalarValueRange.compactMap({ (scalarValue: UInt32) -> String? in
guard let scalar = Unicode.Scalar(scalarValue) else { return nil }
return String(scalar)
})
print(SymbolArray)