1. packagecn.umgsai.file;
  2. importjava.io.File;
  3. importjava.io.FileNotFoundException;
  4. importjava.io.FileOutputStream;
  5. importjava.io.InputStream;
  6. importjava.io.OutputStream;
  7. importcn.umgsai.service.FileService;
  8. importandroid.app.Activity;
  9. importandroid.content.Context;
  10. importandroid.os.Bundle;
  11. importandroid.os.Environment;
  12. importandroid.util.Log;
  13. importandroid.view.View;
  14. importandroid.widget.Button;
  15. importandroid.widget.EditText;
  16. importandroid.widget.TextView;
  17. importandroid.widget.Toast;
  18. publicclassDataActivityextendsActivity{
  19. privateEditTextfilenameText;
  20. privateEditTextcontentText;
  21. privateTextViewresultView;
  22. privatestaticfinalStringTAG="DataActivity";
  23. /**Calledwhentheactivityisfirstcreated.*/
  24. @Override
  25. publicvoidonCreate(BundlesavedInstanceState){
  26. super.onCreate(savedInstanceState);
  27. setContentView(R.layout.main);
  28. filenameText=(EditText)this.findViewById(R.id.filename);
  29. contentText=(EditText)this.findViewById(R.id.content);
  30. resultView=(TextView)this.findViewById(R.id.result);
  31. Stringfilename=filenameText.getText().toString();
  32. Buttonbutton=(Button)this.findViewById(R.id.button);
  33. ButtonshowButton=(Button)this.findViewById(R.id.showButton);
  34. button.setOnClickListener(listener);
  35. showButton.setOnClickListener(listener);
  36. }
  37. privateView.OnClickListenerlistener=newView.OnClickListener(){
  38. @Override
  39. publicvoidonClick(Viewv){
  40. Buttonbutton=(Button)v;
  41. Stringfilename=filenameText.getText().toString();
  42. switch(button.getId()){
  43. caseR.id.button://如果是保存按钮
  44. intresId=R.string.success;
  45. Stringcontent=contentText.getText().toString();
  46. Filefile=newFile(Environment.getExternalStorageDirectory(),filename);
  47. if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
  48. try{
  49. //OutputStreamoutStream=DataActivity.this.openFileOutput(filename,Context.MODE_WORLD_WRITEABLE+Context.MODE_WORLD_READABLE);
  50. //四中操作模式
  51. //Context.MODE_PRIVATE=0覆盖、私有
  52. //Context.MODE_APPEND=32768追加、私有
  53. //Context.MODE_WORLD_READABLE=1其他的程序可以访问
  54. //Context.MODE_WORLD_WRITEABLE=2
  55. //Environment.getExternalStorageDirectory()==newfile("/sdcard")
  56. FileOutputStreamoutStream=newFileOutputStream(file);
  57. try{
  58. FileService.save(outStream,content);
  59. }catch(Exceptione){
  60. Log.e(TAG,e.toString());
  61. resId=R.string.error;
  62. }
  63. }catch(FileNotFoundExceptione){
  64. Log.e(TAG,e.toString());
  65. resId=R.string.error;
  66. }
  67. Toast.makeText(DataActivity.this,resId,Toast.LENGTH_LONG).show();
  68. }
  69. else{
  70. Toast.makeText(DataActivity.this,"SD卡不存在或者写保护",Toast.LENGTH_LONG).show();
  71. }
  72. break;
  73. caseR.id.showButton://如果是显示按钮
  74. try{
  75. InputStreaminStream=DataActivity.this.openFileInput(filename);
  76. Stringtext=FileService.read(inStream);
  77. resultView.setText(text);
  78. }catch(Exceptione){
  79. Log.e(TAG,e.toString());
  80. resId=R.string.error;
  81. Toast.makeText(DataActivity.this,"读取失败",Toast.LENGTH_LONG).show();
  82. }
  83. break;
  84. }
  85. }
  86. };
  87. }

更多相关文章

  1. Android追加写入文件的几种方法
  2. android > intent > 自动跳转到 系统 设置 页面
  3. android 按钮变化颜色
  4. android RadioButton放大或者缩小
  5. Android之——史上最简单自定义开关按钮的实现
  6. Androidstudio开发button按钮的操作以及项目开发大致过程
  7. Android—3分钟你也能学会AlertDialog对话框(2020-6-25)
  8. Android(安卓)自定义控件外观
  9. Android自定义扁平化对话框

随机推荐

  1. 25个iptables常用示例
  2. HTTP状态码及说明
  3. Gitlab备份、迁移、恢复和升级
  4. 痞子衡嵌入式:恩智浦MCU安全加密启动一站
  5. Gitlab安装部署及基础操作
  6. 使用git-svn迁移SVN至GitLab
  7. SVN服务的部署及使用
  8. 痞子衡嵌入式:高性能MCU之音视频应用开发
  9. tomcat进阶操作
  10. 痞子衡嵌入式:飞思卡尔Kinetis开发板OpenS