收藏 分销(赏)

Android大数据的存储和大数据的访问.pdf

上传人:1587****927 文档编号:1533646 上传时间:2024-04-30 格式:PDF 页数:14 大小:171.92KB 下载积分:8 金币
下载 相关 举报
Android大数据的存储和大数据的访问.pdf_第1页
第1页 / 共14页
Android大数据的存储和大数据的访问.pdf_第2页
第2页 / 共14页


点击查看更多>>
资源描述
实用标准文案精彩文档南昌航空大学实验报告二 0 一 4 年 11 月 14 日课程名称:Android 实验名称:Android 数据存储和数据访问 班级:姓名:同组人:指导教师评定:签名:一:实验目的掌握 SharedPreferences 的使用方法;掌握各种文件存储的区别与适用情况;了解 SQLite 数据库的特点和体系结构;掌握 SQLite 数据库的建立和操作方法;理解 ContentProvider 的用途和原理;掌握 ContentProvider 的创建与使用方法二:实验工具Eclipse(MyEclipse)+ADT +Android2.2 SDK;三:实验题目1.应用程序一般允许用户自己定义配置信息,如界面背景颜色、字体大小和字体颜色等,尝试使用 SharedPreferences 保存用户的自定义配置信息,并在程序启动时自动加载这些自定义的配置信息。2.尝试把第 1 题的用户自己定义配置信息,以 INI 文件的形式保存在内部存储器上。3.使用代码建库的方式,创建名为 test.db 的数据库,并建立 staff 数据表,表内的属性值如下表所示:属性属性数据类型数据类型说明说明_idinteger主键nametext姓名sextext性别departmenttext所在部门salaryfloat工资实验目的实用标准文案精彩文档掌握 SharedPreferences 的使用方法;掌握各种文件存储的区别与适用情况;了解 SQLite 数据库的特点和体系结构;掌握 SQLite 数据库的建立和操作方法;理解 ContentProvider 的用途和原理;掌握 ContentProvider 的创建与使用方法实验工具Eclipse(MyEclipse)+ADT +Android2.2 SDK;实验题目1.应用程序一般允许用户自己定义配置信息,如界面背景颜色、字体大小和字体颜色等,尝试使用SharedPreferences 保存用户的自定义配置信息,并在程序启动时自动加载这些自定义的配置信息。2.尝试把第 1 题的用户自己定义配置信息,以 INI 文件的形式保存在内部存储器上。3.使用代码建库的方式,创建名为 test.db 的数据库,并建立staff 数据表,表内的属性值如下表所示:实用标准文案精彩文档属属性性数数据类型据类型说明说明_idinteger主键nametext姓名sextext性别departmenttext所在部门salaryfloat工资4.建立一个ContentProvider,用来共享第 3题所建立的数据库;4.建立一个 ContentProvider,用来共享第 3 题所建立的数据库;四:实验代码InternalFileDemopublic class InternalFileDemo extends Activity private final String FILE_NAME=fileDemo.txt;private TextView labelView;private TextView displayView;private CheckBox appendBox;private EditText entryText;Override public void onCreate(Bundle savedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.main);labelView=(TextView)findViewById(R.id.label);displayView=(TextView)findViewById(R.id.display);appendBox=(CheckBox)findViewById(R.id.append);entryText=(EditText)findViewById(R.id.entry);Button writeButton=(Button)findViewById(R.id.write);实用标准文案精彩文档 Button readButton=(Button)findViewById(R.id.read);writeButton.setOnClickListener(writeButtonListener);readButton.setOnClickListener(readButtonListener);entryText.selectAll();entryText.findFocus();OnClickListener writeButtonListener=new OnClickListener()Overridepublic void onClick(View v)FileOutputStream fos=null;try if(appendBox.isChecked()fos=openFileOutput(FILE_NAME,Context.MODE_APPEND);else fos=openFileOutput(FILE_NAME,Context.MODE_PRIVATE);String text=entryText.getText().toString();fos.write(text.getBytes();labelView.setText(文件写入成功,写入长度:+text.length();entryText.setText();catch(FileNotFoundException e)e.printStackTrace();catch(IOException e)e.printStackTrace();finallyif(fos!=null)try fos.flush();fos.close();catch(IOException e)e.printStackTrace();实用标准文案精彩文档 OnClickListener readButtonListener=new OnClickListener()Override public void onClick(View v)displayView.setText();FileInputStream fis=null;try fis=openFileInput(FILE_NAME);if(fis.available()=0)return;byte readBytes=new bytefis.available();while(fis.read(readBytes)!=-1)String text=new String(readBytes);displayView.setText(text);labelView.setText(文件读取成功,文件长度:+text.length();catch(FileNotFoundException e)e.printStackTrace();catch(IOException e)e.printStackTrace();SimplePreferenceDemopublic class SimplePreferenceDemo extends Activity private EditText nameText;private EditText ageText;private EditText heightText;public static final String PREFERENCE_NAME=SaveSetting;public static int MODE=Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE;Override public void onCreate(Bundle savedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.main);实用标准文案精彩文档 nameText=(EditText)findViewById(R.id.name);ageText=(EditText)findViewById(R.id.age);heightText=(EditText)findViewById(R.id.height);Override public void onStart()super.onStart();loadSharedPreferences();Override public void onStop()super.onStop();saveSharedPreferences();private void loadSharedPreferences()SharedPreferences sharedPreferences=getSharedPreferences(PREFERENCE_NAME,MODE);String name=sharedPreferences.getString(Name,Tom);int age=sharedPreferences.getInt(Age,20);float height=sharedPreferences.getFloat(Height,1.81f);nameText.setText(name);ageText.setText(String.valueOf(age);heightText.setText(String.valueOf(height);private void saveSharedPreferences()SharedPreferences sharedPreferences=getSharedPreferences(PREFERENCE_NAME,MODE);SharedPreferences.Editor editor=sharedPreferences.edit();editor.putString(Name,nameText.getText().toString();editor.putInt(Age,Integer.parseInt(ageText.getText().toString();editor.putFloat(Height,Float.parseFloat(heightText.getText().toString();mit();实用标准文案精彩文档SQLiteDemopublic class DBAdapter DBAdapter.javaprivate static final String DB_NAME=people.db;private static final String DB_TABLE=peopleinfo;private static final int DB_VERSION=1;public static final String KEY_ID=_id;public static final String KEY_NAME=name;public static final String KEY_AGE=age;public static final String KEY_HEIGHT=height;private SQLiteDatabase db;private final Context context;private DBOpenHelper dbOpenHelper;public DBAdapter(Context _context)context=_context;/*Close the database*/public void close()if(db!=null)db.close();db=null;/*Open the database*/public void open()throws SQLiteException dbOpenHelper=new DBOpenHelper(context,DB_NAME,null,DB_VERSION);try db=dbOpenHelper.getWritableDatabase();catch(SQLiteException ex)db=dbOpenHelper.getReadableDatabase();实用标准文案精彩文档 public long insert(People people)ContentValues newValues=new ContentValues();newValues.put(KEY_NAME,people.Name);newValues.put(KEY_AGE,people.Age);newValues.put(KEY_HEIGHT,people.Height);return db.insert(DB_TABLE,null,newValues);public People queryAllData()Cursor results=db.query(DB_TABLE,new String KEY_ID,KEY_NAME,KEY_AGE,KEY_HEIGHT,null,null,null,null,null);return ConvertToPeople(results);public People queryOneData(long id)Cursor results=db.query(DB_TABLE,new String KEY_ID,KEY_NAME,KEY_AGE,KEY_HEIGHT,KEY_ID+=+id,null,null,null,null);return ConvertToPeople(results);private People ConvertToPeople(Cursor cursor)int resultCounts=cursor.getCount();if(resultCounts=0|!cursor.moveToFirst()return null;People peoples=new PeopleresultCounts;for(int i=0;iresultCounts;i+)peoplesi=new People();peoplesi.ID=cursor.getInt(0);peoplesi.Name=cursor.getString(cursor.getColumnIndex(KEY_NAME);peoplesi.Age=cursor.getInt(cursor.getColumnIndex(KEY_AGE);peoplesi.Height=cursor.getFloat(cursor.getColumnIndex(KEY_HEIGHT);cursor.moveToNext();实用标准文案精彩文档 return peoples;public long deleteAllData()return db.delete(DB_TABLE,null,null);public long deleteOneData(long id)return db.delete(DB_TABLE,KEY_ID+=+id,null);public long updateOneData(long id,People people)ContentValues updateValues=new ContentValues();updateValues.put(KEY_NAME,people.Name);updateValues.put(KEY_AGE,people.Age);updateValues.put(KEY_HEIGHT,people.Height);return db.update(DB_TABLE,updateValues,KEY_ID+=+id,null);/*静态Helper类,用于建立、更新和打开数据库*/private static class DBOpenHelper extends SQLiteOpenHelper public DBOpenHelper(Context context,String name,CursorFactory factory,int version)super(context,name,factory,version);private static final String DB_CREATE=create table +DB_TABLE+(+KEY_ID+integer primary key autoincrement,+KEY_NAME+text not null,+KEY_AGE+integer,+KEY_HEIGHT+float);Override public void onCreate(SQLiteDatabase _db)_db.execSQL(DB_CREATE);Override public void onUpgrade(SQLiteDatabase _db,int _oldVersion,int _newVersion)_db.execSQL(DROP TABLE IF EXISTS +DB_TABLE);实用标准文案精彩文档 onCreate(_db);People.javapublic class People public int ID=-1;public String Name;public int Age;public float Height;Overridepublic String toString()String result=;result+=ID:+this.ID+,;result+=姓名:+this.Name+,;result+=年龄:+this.Age+,;result+=身高:+this.Height+,;return result;SQLiteDemo.javapublic class SQLiteDemo extends Activity /*Called when the activity is first created.*/private DBAdapter dbAdepter;private EditText nameText;private EditText ageText;private EditText heightText;private EditText idEntry;private TextView labelView;private TextView displayView;实用标准文案精彩文档 Override public void onCreate(Bundle savedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.main);nameText=(EditText)findViewById(R.id.name);ageText=(EditText)findViewById(R.id.age);heightText=(EditText)findViewById(R.id.height);idEntry=(EditText)findViewById(R.id.id_entry);labelView=(TextView)findViewById(R.id.label);displayView=(TextView)findViewById(R.id.display);Button addButton=(Button)findViewById(R.id.add);Button queryAllButton=(Button)findViewById(R.id.query_all);Button clearButton=(Button)findViewById(R.id.clear);Button deleteAllButton=(Button)findViewById(R.id.delete_all);Button queryButton=(Button)findViewById(R.id.query);Button deleteButton=(Button)findViewById(R.id.delete);Button updateButton=(Button)findViewById(R.id.update);addButton.setOnClickListener(addButtonListener);queryAllButton.setOnClickListener(queryAllButtonListener);clearButton.setOnClickListener(clearButtonListener);deleteAllButton.setOnClickListener(deleteAllButtonListener);queryButton.setOnClickListener(queryButtonListener);deleteButton.setOnClickListener(deleteButtonListener);updateButton.setOnClickListener(updateButtonListener);dbAdepter=new DBAdapter(this);dbAdepter.open();OnClickListener addButtonListener=new OnClickListener()Overridepublic void onClick(View v)People people=new People();people.Name=nameText.getText().toString();实用标准文案精彩文档people.Age=Integer.parseInt(ageText.getText().toString();people.Height=Float.parseFloat(heightText.getText().toString();long colunm=dbAdepter.insert(people);if(colunm=-1)labelView.setText(添加过程错误!);else labelView.setText(成功添加数据,ID:+String.valueOf(colunm);OnClickListener queryAllButtonListener=new OnClickListener()Overridepublic void onClick(View v)People peoples=dbAdepter.queryAllData();if(peoples=null)labelView.setText(数据库中没有数据);return;labelView.setText(数据库:);String msg=;for(int i=0;i0?成功:失败);labelView.setText(msg);OnClickListener updateButtonListener=new OnClickListener()Overridepublic void onClick(View v)People people=new People();people.Name=nameText.getText().toString();people.Age=Integer.parseInt(ageText.getText().toString();people.Height=Float.parseFloat(heightText.getText().toString();long id=Integer.parseInt(idEntry.getText().toString();long count=dbAdepter.updateOneData(id,people);if(count=-1)实用标准文案精彩文档labelView.setText(更新错误!);else labelView.setText(更新成功,更新数据+String.valueOf(count)+条);
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服