Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone




VPS  250 ҷ͹

iOS/iPhone and JSON (Create JSON and JSON Parsing, Objective-C)

iOS/iPhone and JSON (Create JSON and JSON Parsing , Objective-C) เข้าสู่โลกของ iOS และ JSON ในการเขียน Application บน iPhone หรือ iPad หรือ App อื่น ๆ ทำงานระหว่าง Web Server กับ Client หรือ Web Server ต่อ Web Server นั้น ในการแลกเปลี่ยนข้อมูลระหว่างกันสิ่งที่ขาดไม่ได้ก็คือ JSON เพราะมันเป็นมาตรฐานที่ได้ถูกใช้กันอย่างหลากหลาย ช่วยให้การรับส่งข้อมูลนั้นง่าย และ เกิดประสิทธิภาพ ถูกต้องและแม่นยำ สามารถส่งข้อมลที่เป็นชุดของข้อมูลที่อยู่ในรูปแบบของ Array ที่ประกอบด้วยหลาย Index และหลายมิติ และฝั่งที่เป็นฝั่งรับข้อมูลก็สามารถที่จะทำการ DeCode หรือ Parsing ข้อมูลในรูปแบบของ JSON ได้อย่างถูกต้อง

iOS/iPhone and JSON (Create JSON and JSON Parsing)

iOS/iPhone and JSON (Create JSON and JSON Parsing)


ตัวอย่าง JSON แบบ Array มิติเดียว
{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }

ตัวอย่าง JSON แบบ Array หลาย Index และหลายมิติ
[{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }, { "MemberID":"2", "Name":"Win", "Tel":"021978032" }, { "MemberID":"3", "Name":"Eak", "Tel":"087654321" }]


ในบทความนี้ผมจะรวบรวมการใช้งาน JSON บน iOS (Objective-C) ที่เป็นพื้นฐานที่จะนำไปใช้งานเกือบทั้งหมด เช่น การอ่าน JSON ในรูปแบบของ Array มิติเดียว หรือ Array หลายมิติ และหลาย Index รวมทั้งการสร้างเข้ารหัส JSON การอ่าน JSON จาก URL ที่อยู่บน Web Server โดยทั้งหมดนี้เราจะใช้ Class ของ NSJSONSerialization ที่อยู่ในภาษา Objecttive-C ที่สามารถเรียกใช้งานได้แบบง่าย ๆ



Ex 1 : การอ่าน JSON แบบ Array มิติเดียว

ข้อความ JSON
{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }

    // { "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }
    
    NSString *stringData = @"{ \"MemberID\":\"1\", \"Name\":\"Weerachai\", \"Tel\":\"0819876107\" }";
    NSData *jsonData = [stringData dataUsingEncoding:NSUTF8StringEncoding];
    
    id jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];
    NSArray *keys = [jsonObjects allKeys];
    
    // value in key name
    NSString *strMemberID = [jsonObjects objectForKey:@"MemberID"];
    NSString *strName = [jsonObjects objectForKey:@"Name"];
    NSString *strTel = [jsonObjects objectForKey:@"Tel"];
    NSLog(@"MemberID = %@",strMemberID);
    NSLog(@"Name = %@",strName);
    NSLog(@"Tel = %@",strTel);
    
    NSLog(@"====================");
    
    // values in foreach loop
    for (NSString *key in keys) {
        NSLog(@"%@ is %@",key, [jsonObjects objectForKey:key]);
    }


Screenshot

iOS/iPhone and JSON (Create JSON and JSON Parsing)

แสดงค่า JSON ที่ได้



Ex 2 : การอ่าน JSON จาก URL ของเว็บ URL (Website)

http://www.thaicreate.com/json/

iOS/iPhone and JSON (Create JSON and JSON Parsing)

ไฟล์ JSON และ URL ที่อยู่บนเว็บไซต์

    // { "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }
    
    NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.thaicreate.com/json/"]];
    
    id jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];
    NSArray *keys = [jsonObjects allKeys];
    
    // value in key name
    NSString *strMemberID = [jsonObjects objectForKey:@"MemberID"];
    NSString *strName = [jsonObjects objectForKey:@"Name"];
    NSString *strTel = [jsonObjects objectForKey:@"Tel"];
    NSLog(@"MemberID = %@",strMemberID);
    NSLog(@"Name = %@",strName);
    NSLog(@"Tel = %@",strTel);
    
    NSLog(@"====================");
    
    // values in foreach loop
    for (NSString *key in keys) {
        NSLog(@"%@ is %@",key, [jsonObjects objectForKey:key]);
    }









Screenshot

iOS/iPhone and JSON (Create JSON and JSON Parsing)

แสดงค่า JSON ที่ได้



Ex 3 : การอ่าน JSON แบบ Array หลายมิติ และ หลาย Index

http://www.thaicreate.com/json/

iOS/iPhone and JSON (Create JSON and JSON Parsing)

ไฟล์ JSON และ URL ที่อยู่บนเว็บไซต์

ข้อความ JSON
[{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }, { "MemberID":"2", "Name":"Win", "Tel":"021978032" }, { "MemberID":"3", "Name":"Eak", "Tel":"087654321" }]

    // [{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }, { "MemberID":"2", "Name":"Win", "Tel":"021978032" }, { "MemberID":"3", "Name":"Eak", "Tel":"087654321" }]
    
    NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.thaicreate.com/json/"]];
    
    id jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];
    
     // values in foreach loop
    for (NSDictionary *dataDict in jsonObjects) {
        NSString *strMemberID = [dataDict objectForKey:@"MemberID"];
        NSString *strName = [dataDict objectForKey:@"Name"];
        NSString *strTel = [dataDict objectForKey:@"Tel"];
        NSLog(@"MemberID = %@",strMemberID);
        NSLog(@"Name = %@",strName);
        NSLog(@"Tel = %@",strTel);
        
        NSLog(@"====================");
    }


Screenshot

iOS/iPhone and JSON (Create JSON and JSON Parsing)

แสดงค่า JSON ที่ได้



Ex 4 : การสร้าง Create ข้อมูลให้อยู่ในรูปแบบ JSON แบบ Array มิติเดียว

ข้อความ JSON ที่ต้องการ
{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }

    /*** Create JSON ***/
    NSMutableDictionary *nameElements = [NSMutableDictionary dictionary];
    [nameElements setObject:@"1" forKey:@"MemberID"];
    [nameElements setObject:@"Weerachai" forKey:@"Name"];
    [nameElements setObject:@"0819876107" forKey:@"Tel"];
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:nameElements
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
    
    // Result
    // { "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }
    
    /*** Read JSON ***/
    id jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];
    NSArray *keys = [jsonObjects allKeys];
    // values in foreach loop
    for (NSString *key in keys) {
        NSLog(@"%@ is %@",key, [jsonObjects objectForKey:key]);
    }


Screenshot

iOS/iPhone and JSON (Create JSON and JSON Parsing)

แสดงค่า JSON ที่ได้ จากการสร้าง JSON และ อ่านค่า JSON








Ex 5 : การสร้าง Create ข้อมูลให้อยู่ในรูปแบบ JSON แบบ Array หลายมิติ และ หลาย Index

ข้อความ JSON ที่ต้องการ
[{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }, { "MemberID":"2", "Name":"Win", "Tel":"021978032" }, { "MemberID":"3", "Name":"Eak", "Tel":"087654321" }]

    /*** Create JSON ***/
    
    NSMutableArray *myObject;
    
    // A dictionary object
    NSDictionary *dict;
    
    // Define keys
    NSString *memberid;
    NSString *name;
    NSString *tel;
    
    // Define keys
    memberid = @"MemberID";
    name = @"Name";
    tel = @"Tel";
    
    
    // Create array to hold dictionaries
    myObject = [[NSMutableArray alloc] init];
    
    dict = [NSDictionary dictionaryWithObjectsAndKeys:
            @"1", memberid,
            @"Weerachai", name,
            @"0819876107", tel,
            nil];
    [myObject addObject:dict];
    
    
    dict = [NSDictionary dictionaryWithObjectsAndKeys:
            @"2", memberid,
            @"Win", name,
            @"021978032", tel,
            nil];
    [myObject addObject:dict];
    
    
    dict = [NSDictionary dictionaryWithObjectsAndKeys:
            @"3", memberid,
            @"Eak", name,
            @"087654321", tel,
            nil];
    [myObject addObject:dict];
    
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:myObject
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
    
    // Resutl
    // [{ "MemberID":"1", "Name":"Weerachai", "Tel":"0819876107" }, { "MemberID":"2", "Name":"Win", "Tel":"021978032" }, { "MemberID":"3", "Name":"Eak", "Tel":"087654321" }]
    
    
    /*** Read JSON ***/
    id jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];
    
    // values in foreach loop
    for (NSDictionary *dataDict in jsonObjects) {
        NSString *strMemberID = [dataDict objectForKey:@"MemberID"];
        NSString *strName = [dataDict objectForKey:@"Name"];
        NSString *strTel = [dataDict objectForKey:@"Tel"];
        NSLog(@"MemberID = %@",strMemberID);
        NSLog(@"Name = %@",strName);
        NSLog(@"Tel = %@",strTel);
        
        NSLog(@"====================");
    }


Screenshot

iOS/iPhone and JSON (Create JSON and JSON Parsing)

แสดงค่า JSON ที่ได้ จากการสร้าง JSON และ อ่านค่า JSON


จากตัวอย่าง 5 ตอนถือได้ว่าเกือบครบทั้งหมดสำหรับการใช้งาน JSON เบื้องต้น เช่นการแปลง JSON และอ่าน JSON จาก URL (Website) และการสร้าง String ให้อยู่ในรูปแบบของ JSON ซึ่งอาจจะนำไปใช้ในการส่งค่าผ่าน View ต่าง ๆ ซึ่งบทความทั้งหมดเหล่านี้ถือได้ว่าผมได้รวบรวมไว้ให้ได้ใช้งานและเข้าใจง่ายที่สุด ที่เหลือคือการนำไปประยุกต์ใช้กับส่วนต่าง ๆ ของโปรแกรมได้ ลองมาดูการใช้ JSON กับ Table View ตามตัวอย่างนี้กันครับ

iOS/iPhone Table View and JSON (UITableView from JSON Parser)

.

   
Share


ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท


ลองใช้ค้นหาข้อมูล


   


Bookmark.   
       
  By : ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ)
  Score Rating :  
  Create/Update Date : 2012-12-03 09:28:45 / 2017-03-26 09:06:57
  Download : Download  iOS/iPhone and JSON (Create JSON and JSON Parsing, Objective-C)
 Sponsored Links / Related

 
iOS/iPhone Table View and JSON (UITableView from JSON Parser)
Rating :

 
iOS/iPhone Passing JSON (NSJSONSerialization) Between View
Rating :

 
iOS/iPhone PHP/MySQL and JSON Parsing (Objective-C)
Rating :

 
iOS/iPhone Display Image on Table View from JSON URL (Web Site)
Rating :

 
iOS/iPhone Search Bar (UISearchBar) Data from Web Server Using JSON
Rating :

 
iOS/iPhone Picker View and JSON (UIPickerView)
Rating :

 
iOS/iPhone Collection View (UICollectionView) and JSON (Web Server URL)
Rating :

 
iOS/iPhone XML Parser / XML Feed from URL (NSXMLParser ,Objective-C)
Rating :

 
iOS/iPhone NSURLConnection and PHP MySQL / JSON (TableView,UITableView)
Rating :


ThaiCreate.Com Forum




Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


สุดยอด Source Code V2.0
 

แจ้งชำระเงิน/โอนเงิน
 

Hit Link
   


Acc : thaicreate@hotmail.com










Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2017 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่