Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> IOS

จะสร้างไฟล์ เขียนข้อมูลลงไป และอ่านข้อมูลจากไฟล์บน iOS ได้อย่างไร?


การเป็นนักพัฒนาซอฟต์แวร์ เราควรตระหนักอยู่เสมอถึงวิธีการเล่นไฟล์ เขียนไฟล์ อ่านจากไฟล์ และอื่นๆ

ในบทความนี้ เราจะมาเรียนรู้สิ่งเดียวกัน เราจะสร้างไฟล์และเขียนข้อมูลลงในไฟล์และอ่านไฟล์เดียวกันในภายหลัง

มาเริ่มกันเลย

ขั้นตอนที่ 1 − สร้าง Xcode Project ใหม่ → แอปพลิเคชั่น Single View → ตั้งชื่อว่า “ReadingWritingFile”

ขั้นตอนที่ 2 − เปิด ViewController.swift และเพิ่มฟังก์ชันใหม่ดังที่แสดงด้านล่าง

public func createAndWriteFile() {
}

ตอนนี้เราจะสร้างไฟล์และพิมพ์เส้นทางของไฟล์

ขั้นตอนที่ 3 − ภายในฟังก์ชัน createAndWriteFile เพิ่ม

let fileName = "sample"
let documentDirectoryUrl = try! FileManager.default.url(
   for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true
)
let fileUrl = documentDirectoryUrl.appendingPathComponent(fileName).appendingPathExtension("txt")
// prints the file path
print("File path \(fileUrl.path)")

ตอนนี้ฟังก์ชัน createAndWriteFile ของคุณควรมีลักษณะดังนี้

public func createAndWriteFile() {
   let fileName = "sample"
   let documentDirectoryUrl = try! FileManager.default.url(
      for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true
   )
   let fileUrl = documentDirectoryUrl.appendingPathComponent(fileName).appendingPathExtension("txt")
   // prints the file path
   print("File path \(fileUrl.path)")
   //data to write in file.
   let stringData = "Hello Tutorials Point"
   do {
      try stringData.write(to: fileUrl, atomically: true, encoding: String.Encoding.utf8)
   } catch let error as NSError {
      print (error)
   }
}

ตอนนี้เราจะเขียนไปยังไฟล์

เพิ่มโค้ดด้านล่างให้กับฟังก์ชันที่มีอยู่

//data to write in file.
let stringData = "Hello Tutorials Point"
do {
   try stringData.write(to: fileUrl, atomically: true, encoding: String.Encoding.utf8)
} catch let error as NSError {
   print (error)
}

ขั้นตอนที่ 4 − ฟังก์ชันสุดท้ายของคุณควรมีลักษณะดังนี้

// function to create file and write into the same.
public func createAndWriteFile() {
   let fileName = "sample"
   let documentDirectoryUrl = try! FileManager.default.url(
      for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true
   )
   let fileUrl = documentDirectoryUrl.appendingPathComponent(fileName).appendingPathExtension("txt")
   // prints the file path
   print("File path \(fileUrl.path)")
   //data to write in file.
   let stringData = "Hello Tutorials Point"
   do {
      try stringData.write(to: fileUrl, atomically: true, encoding: String.Encoding.utf8)
   } catch let error as NSError {
      print (error)
   }
}

ขั้นตอนที่ 5 - เรียกใช้โครงการโดยเรียกวิธีการใหม่จาก viewDidLoad() และนำทางไปยังเส้นทางของไฟล์และตรวจสอบความถูกต้องของเนื้อหา

ขั้นตอนที่ 6 − ตอนนี้เรากำลังจะอ่านเนื้อหา คัดลอกโค้ดด้านล่างในฟังก์ชันเดียวกัน

var readFile = ""
do {
   readFile = try String(contentsOf: fileUrl)
} catch let error as NSError {
   print(error)
}
print (readFile)

เสร็จแล้วค่ะ

จะสร้างไฟล์ เขียนข้อมูลลงไป และอ่านข้อมูลจากไฟล์บน iOS ได้อย่างไร?

ขั้นตอนที่ 7 − กรอกรหัส

import UIKit
class ViewController: UIViewController {
   override func viewDidLoad() {
      super.viewDidLoad()
      // Do any additional setup after loading the view, typically from a nib.
      self.createReadAndWriteFile()
   }
   override func didReceiveMemoryWarning() {
      super.didReceiveMemoryWarning()
      // Dispose of any resources that can be recreated.
   }
   // function to create file and write into the same.
   public func createReadAndWriteFile() {
      let fileName = "sample"
      let documentDirectoryUrl = try! FileManager.default.url(
         for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true
         )
      let fileUrl = documentDirectoryUrl.appendingPathComponent(fileName).appendingPathExtension("txt")
      // prints the file path
      print("File path \(fileUrl.path)")
      //data to write in file.
      let stringData = "Hello Tutorials Point."
      do {
         try stringData.write(to: fileUrl, atomically: true, encoding: String.Encoding.utf8)
      } catch let error as NSError {
         print (error)
      }
      var readFile = ""
      do {
         readFile = try String(contentsOf: fileUrl)
      } catch let error as NSError {
         print(error)
      }
      print (readFile)
   }
}

No