- 浏览: 27551 次
- 性别:
- 来自: 广州
文章分类
最新评论
1. 主界面
2. 参数存储实例
文件存储路径:/data/data/<package_name>/shared_prefs/<filename>.xml
3. 文件存储实例
文件存储路径:
内部存储:/data/data/<package_name>/files/<filename>
SD卡存储:/Android/data/<package_name>/files/<filename>
4. 数据库存储实例
数据库文件存储路径:/data/data/<package_name>/databases/<databaseName>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:scrollbars="vertical" > <LinearLayout android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" tools:context=".MainActivity" > <RadioGroup android:id="@+id/radioClassName" android:layout_width="wrap_content" android:layout_height="wrap_content" > <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/title_activity_preferences" /> <RadioButton android:id="@+id/radio2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/title_activity_file" /> <RadioButton android:id="@+id/radio3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="@string/title_activity_data_base" /> </RadioGroup> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="display" android:text="@string/btn_display" /> </LinearLayout> </ScrollView>
2. 参数存储实例
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".PreferencesActivity" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:text="@string/lblUsername" /> <EditText android:id="@+id/txtUsername" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:text="@string/lblPassword" /> <EditText android:id="@+id/txtPassword" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textPassword" /> </LinearLayout> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_save" android:onClick="save" /> </LinearLayout>
文件存储路径:/data/data/<package_name>/shared_prefs/<filename>.xml
3. 文件存储实例
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout2" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".PreferencesActivity" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:text="@string/lblFilename" /> <EditText android:id="@+id/txtFilename" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="open" android:text="@string/btn_open" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/lblFilecontent" /> <EditText android:id="@+id/txtFilecontent" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="top" android:inputType="textMultiLine" android:lines="10" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="save" android:text="@string/btn_save" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="save2sdcard" android:text="@string/btn_save2sdcard" /> </LinearLayout> </LinearLayout>
package com.example.data; import android.app.Activity; import android.os.Bundle; import android.os.Environment; import android.view.View; import android.widget.EditText; import android.widget.Toast; import com.example.service.FileService; public class FileActivity extends Activity { private EditText filenameEditText, filecontentEditText; private FileService service; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_file); service = new FileService(this); filenameEditText = (EditText) findViewById(R.id.txtFilename); filecontentEditText = (EditText) findViewById(R.id.txtFilecontent); } public void save(View view) { String filename = filenameEditText.getText().toString(); String content = filecontentEditText.getText().toString(); try { service.save(filename, content); Toast.makeText(this, getString(R.string.save_success), Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(this, getString(R.string.save_fail), Toast.LENGTH_LONG).show(); e.printStackTrace(); } } public void save2sdcard(View view) { String filename = filenameEditText.getText().toString(); String content = filecontentEditText.getText().toString(); try { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { service.save2sdcard(filename, content); Toast.makeText(this, getString(R.string.save_success), Toast.LENGTH_LONG).show(); } } catch (Exception e) { Toast.makeText(this, getString(R.string.save_fail), Toast.LENGTH_LONG).show(); e.printStackTrace(); } } public void open(View view) { String filename = filenameEditText.getText().toString(); try { String content=service.open(filename); filecontentEditText.setText(content); Toast.makeText(this, getString(R.string.open_success), Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(this, getString(R.string.open_fail), Toast.LENGTH_LONG).show(); e.printStackTrace(); } } }
package com.example.service; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import android.content.Context; import android.os.Environment; public class FileService { private Context context; public FileService(Context content) { this.context = content; } ///data/data/<package_name>/files/<filename> public void save(String filename, String content) throws Exception { FileOutputStream outputStream = context.openFileOutput(filename, Context.MODE_PRIVATE); outputStream.write(content.getBytes()); outputStream.close(); } //path: /Android/data/<package_name>/files/<filename> public void save2sdcard(String filename, String content) throws Exception { //Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); String path=Environment.getExternalStorageDirectory()+"/Android/data/com.example.data/files/"; File file = new File(path, filename); new File(file.getParent()).mkdirs(); FileOutputStream outputStream = new FileOutputStream(file); outputStream.write(content.getBytes()); outputStream.close(); } public String open(String filename) throws Exception { FileInputStream inputStream = context.openFileInput(filename); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); byte[] buffer = new byte[1024] ; int len = 0; while ((len = inputStream.read(buffer)) != -1) { outputStream.write(buffer, 0, len); } return new String(outputStream.toByteArray()); } }
文件存储路径:
内部存储:/data/data/<package_name>/files/<filename>
SD卡存储:/Android/data/<package_name>/files/<filename>
4. 数据库存储实例
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout3" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".PreferencesActivity" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/lblPhone" /> <EditText android:id="@+id/txtPhone" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="text" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="save" android:text="@string/btn_save2db" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="list" android:text="@string/btn_list" /> </LinearLayout> </LinearLayout>
数据库文件存储路径:/data/data/<package_name>/databases/<databaseName>
相关推荐
在Android开发中,数据库是一个非常重要的组成部分,用于存储和管理应用程序的数据。本实例主要探讨的是如何在Android系统中使用SQLite数据库进行操作。SQLite是Android内置的轻量级数据库,适用于移动设备,支持...
在Android中,可供选择的存储方式有SharedPreferences、文件存储、SQLite数据库方式、内容提供器(Content provider)和网络。一.SharedPreferences方式二.文件存储方式三.SQLite数据库方式四.内容提供器(Content ...
本实例的"Android 操作数据库实例.zip"提供了完整的源代码,涵盖了数据库的基本操作,如添加(Insert)、查询(Query)、更新(Update)和删除(Delete)。这些操作对于理解和实践Android数据库编程至关重要。 1. ...
这里的`insertData()`方法用于插入数据,`ContentValues`对象用来存储待插入的数据,`getWritableDatabase()`获取可读写的数据库实例,然后调用`insert()`方法插入数据。 查询数据: ```java public Cursor getAll...
本教程将详细介绍Android中的三种主要数据存储方式:SharedPreferences存储、内部文件存储以及数据库存储。 1. SharedPreferences存储 SharedPreferences是Android提供的一种轻量级的数据存储方式,用于保存应用...
总的来说,这个Android SQLite数据库实例为开发者提供了一个基础模板,展示了如何在Android应用中使用SQLite数据库进行基本的数据操作。通过学习和理解这个实例,开发者能够更好地掌握Android应用中的数据存储技术,...
通过getWritableDatabase()或getReadableDatabase()方法获取数据库实例,然后使用SQL语句查询、更新或删除数据。 7. **注意事项**: 考虑到Android的安全性,数据库文件应受权限保护,不要将.db文件直接暴露给用户。...
在Android应用开发中,数据库是存储和管理数据的重要组成部分。本实验报告主要涉及如何在Android平台上实现基于SQLite的数据库存储。SQLite是一个轻量级的关系型数据库,它被广泛用于移动设备,因为它不需要单独的...
Realm数据库允许开发者直接在内存中操作数据,极大地提高了应用程序的性能和用户体验。本实例将深入探讨如何在Android项目中使用Realm进行基本的数据操作,包括增、删、改、查。 首先,我们需要在项目中集成Realm...
在Android开发中,数据库是一种常用的数据存储方式,用于持久化应用程序的数据。SQLite是Android系统内置的关系型数据库,轻量级且高效,适用于大部分移动设备的需求。本教程将深入讲解Android数据库的基本操作,...
本实例代码主要关注如何在Android中进行数据库操作,这涉及到SQLite数据库,它是Android系统内置的关系型数据库管理系统。SQLite轻量级、易于使用且功能强大,非常适合移动设备。 首先,我们需要创建一个SQLite...
SQLite被集成在Android操作系统中,允许开发者在应用程序中存储和管理数据。本主题主要探讨如何通过源代码来实现对SQLite数据库的增、删、查、改(CRUD)操作。 首先,SQLiteAdmin.rar可能包含一个用于管理SQLite...
1. **创建(Create)**:通过SQLiteOpenHelper的子类的getWritableDatabase()或getReadableDatabase()方法获取到SQLite数据库实例,然后使用SQL语句插入数据。例如: ```java public boolean insertData(String ...
插入数据通常使用SQL的INSERT INTO语句,结合SQLiteOpenHelper的.getWritableDatabase()方法获取可写的数据库实例,然后调用insert()方法。 6. 查询数据 查询数据时,我们可以使用rawQuery()或query()方法。前者...
通过阅读《新版Android开发教程+笔记十二--文件存取、数据库编程.pdf》这份文档,开发者可以更详细地了解这些概念,并通过实例学习如何在Android项目中实现数据存储和数据库功能。此外,文档可能还会涵盖如何处理...
本压缩包文件"Android程序研发源码Android 操作数据库实例.zip"应该包含了一些实际项目中对SQLite数据库进行操作的源代码示例。下面将详细讲解Android中如何操作SQLite数据库。 1. 数据库创建与升级: - 在Android...
Android数据库实例是指在Android应用程序中使用的数据库系统,用于存储和管理应用程序的数据。在Android系统中, SQLite数据库是最常用的数据库管理系统,它提供了一个轻量级的关系数据库管理系统,允许开发者在应用...
在Android开发中,SQLite是一个内置的轻量级数据库系统,用于存储应用程序的结构化数据。本教程将详述如何在Android应用中读取SQLite数据库的数据并利用ListView进行展示。 首先,我们需要创建SQLite数据库。在...
SQLite数据库是嵌入式的,意味着每个Android应用程序都有自己的SQLite数据库实例。开发者可以通过SQLiteOpenHelper类来创建和管理数据库版本,以及执行升级或降级操作。这个类的子类通常会重写`onCreate()`和`...