packageliudeli.datastorage;importandroid.app.Activity;importandroid.os.Bundle;importandroid.text.TextUtils;importandroid.view.View;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.TextView;importandroid.widget.Toast;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;public class MainActivity3 extends Activity implementsView.OnClickListener {

@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main3);

initViewListener();

}privateEditText etOutpu;privateTextView tvInput;publicButton btOutput, btInput;private voidinitViewListener() {

etOutpu=findViewById(R.id.et_output);

tvInput=findViewById(R.id.tv_input);

btOutput=findViewById(R.id.bt_output);

btInput=findViewById(R.id.bt_input);

btOutput.setOnClickListener(this);

btInput.setOnClickListener(this);//让TextView获得焦点,TextView就可以滚动了

tvInput.setSelected(true);

}

@Overrideprotected voidonDestroy() {super.onDestroy();

}

@Overridepublic voidonClick(View v) {switch(v.getId()) {caseR.id.bt_input: {//Java传统方式 注意:访问自身APP到目录是不需要权限 Linux目录是以/为开头

File file = new File("/data/data/" + getPackageName() + "/my_file.txt");if (!file.exists()) {

Toast.makeText(MainActivity3.this, "文件不存在", Toast.LENGTH_LONG).show();return;

}try{//使用字符读取流

FileReader fileReader = newFileReader(file);//为什么要用BufferedReader,因为BufferedReader有readLine()的方法

BufferedReader br = newBufferedReader(fileReader);

String result=br.readLine();

tvInput.setText(result+ "");

fileReader.close();

br.close();

}catch(Exception e) {

e.printStackTrace();

}break;

}caseR.id.bt_output: {

String outputStr=etOutpu.getText().toString();if(TextUtils.isEmpty(outputStr)) {

Toast.makeText(MainActivity3.this, "请输入内容!", Toast.LENGTH_SHORT).show();return;

}//Java传统方式 注意:访问自身APP到目录是不需要权限 Linux目录是以/为开头

File file = new File("/data/data/" + getPackageName() + "/my_file.txt");try{//字符写入流

FileWriter fileWriter = newFileWriter(file);

fileWriter.write(outputStr);

fileWriter.close();

}catch(IOException e) {

e.printStackTrace();

}break;

}default:break;

}

}

}

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐