• 0

كيف أكتب وأقرأ من ملف نصي باستخدام لغة Swift؟

بحثتُ عن طريقة التعامل مع الملفات النصية باستخدام لغة Swift ووجدت هذا المثال في Swift’s iBook ولكن لم أعرف كيفية قراءة أو كتابة البيانات على الملف؟

class DataImporter
{
    /*
    DataImporter is a class to import data from an external file.
    The class is assumed to take a non-trivial amount of time to initialize.
    */
    var fileName = "data.txt"
    // the DataImporter class would provide data importing functionality here
}

class DataManager
{
    @lazy var importer = DataImporter()
    var data = String[]()
    // the DataManager class would provide data management functionality here
}

let manager = DataManager()
manager.data += "Some data"
manager.data += "Some more data"
// the DataImporter instance for the importer property has not yet been created”

println(manager.importer.fileName)
// the DataImporter instance for the importer property has now been created
// prints "data.txt”



var str = "Hello World in Swift Language."

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

توفر Swift العديد من الطرق للتعامل مع الملفات وتختلف هذه الطرق بحسب نوع إصدار Swift الذي تعمل عليه.

يمكن استخدام NSFileManager وهو عبارة عن صف class يحوي على مجموعة من الدوال للقراءة والكتابة على الملفات.

طريقة أخرى أكثر شيوعًا في الاستخدام للكتابة على الملفات في  Swift 1.x باستخدام الدالة WriteToFile. حيث يتم تمرير مسار الملف الذي تريد الكتابة عليه على الشكل التالي:

let file = "file.txt"

if let dirs : [String] = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true) as? [String] {
    let dir = dirs[0] //documents directory
    let path = dir.stringByAppendingPathComponent(file);
    let text = "some text"

    //writing
    text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding, error: nil);

للقراءة من ملف يتم استخدام contentsOfFile وتمرير مسار الملف الذي تريد القراءة منه كما في المثال التالي:

//reading
    let text2 = String(contentsOfFile: path, encoding: NSUTF8StringEncoding, error: nil)

في إصدار Swift 2.0  يجب وضع error handling do / catch:

let file = "file.txt" //this is the file. we will write to and read from it

let text = "some text" //just a text

if let dir : NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true).first {
    let path = dir.stringByAppendingPathComponent(file);

    //writing
    do {
        try text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding)
    }
    catch {/* error handling here */}

    //reading
    do {
        let text2 = try NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding)
    }
    catch {/* error handling here */}
}

كيف أكتب وأقرأ من ملف نصي باستخدام لغة Swift؟

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن