標籤:
當然是以檔案形式寫到手機記憶體,不過在模擬器上面運行會很慢
布局檔案
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.file.MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="檔案名稱"/> <EditText android:id="@+id/fileName" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/textView1"/> <TextView android:id="@+id/textView2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/fileName" android:text="常值內容"/> <!-- 輸入yu最少顯示3行 --> <EditText android:id="@+id/content" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/textView2" android:minLines="3"/> <Button android:id="@+id/save" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/content" android:text="儲存"/> <TextView android:id="@+id/fileContent" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/save" android:text="您輸入的內容:"/></RelativeLayout>
儲存資料的商務邏輯
package com.example.service;import java.io.FileOutputStream;import android.content.Context;public class FileService { private Context context; public FileService(Context context){ this.context = context; } public void save(String filename,String content){ try { /*openFileOutput * 第一個參數:輸入的檔案名稱,不接收路徑 * 第二個參數:讀取檔案的許可權 * 應用會預設儲存在該工程files檔案夾下,其中files檔案夾在儲存資料後會自動產生 */FileOutputStream outStream = context.openFileOutput(filename, Context.MODE_PRIVATE);//資料以位元組碼的方式儲存outStream.write(content.getBytes());outStream.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} }}
package com.example.file;import com.example.service.FileService;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {private EditText fileName;private EditText content;private Button save;private TextView fileContent;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);fileName = (EditText) findViewById(R.id.fileName);content = (EditText) findViewById(R.id.content);save = (Button) findViewById(R.id.save);fileContent = (TextView) findViewById(R.id.fileContent);save.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubFileService service = new FileService(MainActivity.this); try {service.save(fileName.getText().toString(), content.getText().toString());Toast.makeText(getApplicationContext(), "儲存成功", Toast.LENGTH_SHORT).show();} catch (Exception e) { Toast.makeText(getApplicationContext(), "儲存失敗", Toast.LENGTH_SHORT).show();} String str = "您輸入的內容:" + content.getText().toString(); fileContent.setText(str);}});}}
點擊儲存,在DDMS視圖下的date/data找到自己的工程。在工程下會產生一個files檔案夾,儲存的資料檔案就在改檔案夾下,可點擊右上方的表徵圖匯出查看
寫資料到手機記憶體