01-21-2016, 09:55 AM
Chúng tôi có thể tiết kiệm hoặc đọc dữ liệu từ các thiết bị bộ nhớ trong. FileInputStream và FileOutputStream lớp học được sử dụng để đọc và ghi dữ liệu vào tập tin. Ở đây, chúng ta sẽ đọc và ghi dữ liệu vào bộ nhớ trong của thiết bị. Ví dụ của việc đọc và ghi dữ liệu vào bộ nhớ trong khi bạn hoc lap trinh android.
Kéo hai thuộc tinhd edittexts, 2 textviews và 2 buttons từ pallete, bây giờ file activity_main.xml sẽ giống như dưới đây:
File: activity_main.xml
>> khóa học lập trình android cơ bản
Lớp Activity
Chúng ta hãy viết code để viết và đọc dữ liệu từ bộ nhớ trong. Viết mã code và đọc chúng trong dữ liệu từ File: MainActivity.java
----------------------- || -----------------------
Trung tâm Đào tạo học photoshop tại hà nội cơ bản nâng cao tại Hà Nội !
Kéo hai thuộc tinhd edittexts, 2 textviews và 2 buttons từ pallete, bây giờ file activity_main.xml sẽ giống như dưới đây:
File: activity_main.xml
Code:
<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"
tools:context=".MainActivity" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="20dp"
android:layout_marginTop="24dp"
android:ems="10" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="24dp"
android:ems="10" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editText1"
android:layout_alignBottom="@+id/editText1"
android:layout_alignParentLeft="true"
android:text="File Name:" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editText2"
android:layout_alignBottom="@+id/editText2"
android:layout_alignParentLeft="true"
android:text="Data:" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText2"
android:layout_below="@+id/editText2"
android:layout_marginLeft="70dp"
android:layout_marginTop="16dp"
android:text="save" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_toRightOf="@+id/button1"
android:text="read" />
</RelativeLayout>Lớp Activity
Chúng ta hãy viết code để viết và đọc dữ liệu từ bộ nhớ trong. Viết mã code và đọc chúng trong dữ liệu từ File: MainActivity.java
Code:
package com.example.internalstorage;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
EditText editTextFileName,editTextData;
Button saveButton,readButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextFileName=(EditText)findViewById(R.id.editText1);
editTextData=(EditText)findViewById(R.id.editText2);
saveButton=(Button)findViewById(R.id.button1);
readButton=(Button)findViewById(R.id.button2);
//Performing Action on Read Button
saveButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
String filename=editTextFileName.getText().toString();
String data=editTextData.getText().toString();
FileOutputStream fos;
try {
fos = openFileOutput(filename, Context.MODE_PRIVATE);
//default mode is PRIVATE, can be APPEND etc.
fos.write(data.getBytes());
fos.close();
Toast.makeText(getApplicationContext(),filename + " saved",
Toast.LENGTH_LONG).show();
} catch (FileNotFoundException e) {e.printStackTrace();}
catch (IOException e) {e.printStackTrace();}
}
});
//Performing Action on Read Button
readButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
String filename=editTextFileName.getText().toString();
StringBuffer stringBuffer = new StringBuffer();
try {
//Attaching BufferedReader to the FileInputStream by the help of InputStreamReader
BufferedReader inputReader = new BufferedReader(new InputStreamReader(
openFileInput(filename)));
String inputString;
//Reading data line by line and storing it into the stringbuffer
while ((inputString = inputReader.readLine()) != null) {
stringBuffer.append(inputString + "\n");
}
} catch (IOException e) {
e.printStackTrace();
}
//Displaying data on the toast
Toast.makeText(getApplicationContext(),stringBuffer.toString(),
Toast.LENGTH_LONG).show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}----------------------- || -----------------------
Trung tâm Đào tạo học photoshop tại hà nội cơ bản nâng cao tại Hà Nội !