Tag Archives: NSData

Objective-C Programming Chapter 11 (Part2)

NSString Path Category

คลาส NSString ที่เราคุ้นเคยนั้นมีแคทิกกอรี่เกี่ยวกับ path ชื่อว่า NSPathUtility ฟังก์ชั่นบางตัวเราที่เราได้เรียกใช้จากโปรแกรมทีผ่านๆมาก็เป็นส่วนหนึ่งของแคทิกกอรี่นี้เช่น NSHomeDirectory เป็นต้น ยังมีแคทิกกอรี่หลายตัวที่น่าสนใจดังโปรแกรมตัวอย่างต่อไปนี้
Program 11.4
Main.m

Continue reading Objective-C Programming Chapter 11 (Part2)

Ojective-C Programming – Read & Write File

ก็ช่วงนี้กำลังว่างหลังจาก โปรเจคของผมก็ได้เสร็จไปแล้วส่วนหนึ่ง กำลังรอเหมือนกันว่า ปีนี้จะมีโอกาสได้ไป WWDC กับเค้าบ้างหรือเปล่า ถ้าได้ไปก็คงจะดีเพราะเท่าที่ดูๆคิดว่า จุดใหญ่ๆของปีนี้น่าจะเป็น iphone นี่เหละ

ก็เขียน tutorial มาหลายๆเรื่องจนถึงเกือบจะสุดท้ายละ ก็น่าจะทำให้ใครหลายๆคนไปต่อยอดอ่าน cocoa ได้สบายๆหรือว่าเป็นจุดเริ่มในการเขียนโปรแกรมบน mac มั่งละ

สำหรับวันนี้ก็ต่อเรื่อง ของ File Managerment กันเลยเพราะว่าครั้งก่อนเป็นแค่การ ใช้งาน file เช่นการ copy file อะไรแบบนี้ แต่วันนี้เราจะมารู้จัก class ที่เกี่ยวกับ file เพิ่มเติมนั่นก็คือ NSData

NSData

ปกติแล้ว class ที่เอาไว้สำหรับจัดการ file ก็คือ NSFileManager  แต่ถ้าเราต้องการที่จะเขียนข้อมูลลง file หรืออ่านข้อมูลจาก file นั้นเราจะใช้ NSData เพื่อทำการอ่านและเขียนลง buffer เพื่อที่จะให้ NSFileManager จัดการเขียนข้อมูลจาก buffer ลง file จริงๆ

จากตัวอย่างข้างบน แบ่งออกเป็น 2 ส่วนคือ

  • Write Data

สำหรับการเขียนข้อมูลนั้น เมื่อทำการ สร้าง NSFileManager ขึ้นมาแล้ว สิ่งที่เราต้องทำต่อมาก็คือการสร้าง NSData เพื่อที่จะเก็บข้อมูลที่ต้องการเขียนไปยังไฟล์

เราก็ทำการส่ง buffer ไปให้ยัง tempData1 และบอกขนาด buffer ให้เรียบร้อย
หลังจากนั้นก็ให้ NSFileManager ที่เราประกาศไว้เป็นคนเขียน

เพียงเท่านี้เราก็สามารถเขียนข้อมูลลงไฟล์ได้แล้ว

  • Read Data

สำหรับการอ่านข้อมูลนั้นก็ทำงานคล้ายๆกับการเขียนคือ หลังจากประกาศ NSFileManager เสร็จก็ให้ประกาศ NSData ทำการอ่านข้อมูลจาก File มาเก็บไว้ จากตัวอย่าง เราทำการอ่านข้อมูลไปจนสิ้นสุดไฟล์เลย

แล้วหลังจากนั้น เราก็สร้าง buffer ขึ้นมาเพื่อที่จะนำข้อมูลออกมาจาก NSData อีกที

ก็เป็นตัวอย่างการเขียนและการอ่านไฟล์ แบบง่ายๆ ลองเอาไปหัดใช้กันดู ก็เหมือนเดิม มี source มาให้ด้วยก็โหลดไปลองเล่นกันดู

Download Foundation Framework File Read Write Source Files