文件的读取和写入

1、布局效果图:


2、string.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">文件保存</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
         <!-- 一下为新添加的内容 -->
    <string name="filename">文件名称</string>
    <string name="filecontent">文字内容</string>
    <string name="button">保存</string>
    <string name="success">保存完成</string>
    <string name="fail">保存失败</string>
</resources>

3、实现布局:activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:orientation="vertical"
     >
    <!-- 1、显示文字:文件名称 -->
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/filename" 
    />
    <!-- 2、显示输入文本框,为了得到输入文本框中的值,为其定义一个id -->
    <EditText 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/filename"
    />
    <!-- 3、显示文字:文字内容-->
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/filecontent" 
    />
    <!-- 4、显示输入文本框,为了得到输入文本框中的值,为其定义一个id -->
    <EditText 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:minLines="4"
        android:id="@+id/filecontent"
    />
    <!-- 5、按钮 -->
    <Button 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button"
        android:id="@+id/button"
    />
</LinearLayout>

4、响应按钮:

package com.example.file;
import com.example.service.FileService;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//写布局的相应代码
Button button=(Button) this.findViewById(R.id.button);
   button.setOnClickListener(new ButtonOnClickListener());
}
//final:终结类的继承
private final class ButtonOnClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
//1.通过输入文本框得到,文件的名称和输入的内容
EditText filenameText=(EditText) findViewById(R.id.filename);
EditText contentText=(EditText) findViewById(R.id.filecontent);
String filename=filenameText.getText().toString();
String content=contentText.getText().toString();
//2.材料已经准备好了,开始保存。将业务逻辑单独的放在一起。
FileService service=new FileService(getApplicationContext());
try {
service.save(filename,content);
//3.保存完成,参数是:要显示的文字和持续的时间
Toast.makeText(getApplicationContext(), R.string.success, 1).show();
} catch (Exception e) {
Toast.makeText(getApplicationContext(), R.string.fail, 1).show();
e.printStackTrace();
}
}
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}


}

你可能感兴趣的:(文件的读取和写入)