ContentValues

This class is used to store a set of values that the ContentResolver can process.

用于保存一些数据(string boolean byte double float int long  short ...)信息,这些信息可以被数据库操作时使用。

ContentValues() Creates an empty set of values using the default initial size

ContentValues(int size) Creates an empty set of values using the given initial size

ContentValues(ContentValues from) Creates a set of values copied from the given set

ContentValues HashTable

ContentValues HashTable类似都是一种存储的机制但是两者最大的区别就在于,contenvalues只能存储基本类型的数据,像stringint之类的,不能存储对象这种东西,而HashTable却可以存储对象。

在往数据库中插入数据的时候,首先应该有一个ContentValues的对象所以:

ContentValues initialValues = new ContentValues();

initialValues.put(key,values);

SQLiteDataBase sdb ;

sdb.insert(database_name,null,initialValues);

插入成功就返回记录的id否则返回-1

 

 

 利用contentValues.put()方法,通过程序添加通讯录里面的联系人资料

读取通讯录的权限:

<uses-permission android:name="android.permission.READ_CONTACTS"/>

1.      try{  

2.                  ContentResolver cr = this.getContentResolver();  

3.                    

4.                  ContentValues cv = new ContentValues();  

5.                  Uri phoneUri = null;  

6.                    

7.                  cv.put(Contacts.People.NAME, strName);  

8.                  cv.put(Contacts.People.STARRED, 1);// like the conatctor best   

9.                    

10.              Uri uri = Contacts.People.createPersonInMyContactsGroup(arg0, cv);  

11.                

12.              if(phoneNum !=null && phoneNum.trim().equals("")){  

13.                  phoneUri = Uri.withAppendedPath(uri, Contacts.People.Phones.CONTENT_DIRECTORY);  

14.                  cv.clear();  

15.                  cv.put(Contacts.Phones.TYPE, Contacts.Phones.NUMBER);  

16.                  cv.put(Contacts.Phones.NUMBER, phoneNum);  

17.                    

18.                  cr.insert(phoneUri, cv);  

19.              }  

20.              if(strEmail !=null && strEmail.trim().equals("")){  

21.                  Uri emailUri = Uri.withAppendedPath(uri, Contacts.People.ContactMethods.CONTENT_DIRECTORY);  

22.                  cv.clear();  

23.                  // judge the contact type via Contacts.ContactMethods.KIND    

24.                  cv.put(Contacts.ContactMethods.KIND, Contacts.KIND_EMAIL);  

25.                  cv.put(Contacts.ContactMethods.DATA, strEmail);  

26.                  cv.put(Contacts.ContactMethods.TYPE, Contacts.ContactMethods.TYPE_HOME);  

27.                    

28.                  cr.insert(emailUri, cv);  

29.              }  

30.                

31.          }catch(Exception e){  

32.              return false;  

33.          }  

 

 

 

你可能感兴趣的:(content)