android studio Devices File Explorer中的data数据不显示问题的解决方案
今天学习文件输入输出,想在android studio 模拟器中查看存储的data数据,折腾了许久总结下遇到的问题。问题一、win10系统没有虚拟机的权限。解决方法:重启电脑---->按F2进入系统
今天学习文件输入输出,想在android studio 模拟器中查看存储的data数据,折腾了许久总结下遇到的问题。
问题一、win10系统没有虚拟机的权限。解决方法:打开电脑的虚拟机权限。操作步骤:重启电脑------>按F2进入系统------>选择Advanced Mode(F7)------>选择Advanced---->选择CPU Configuration----->向下拉动滚动条这样就看到虚拟机的设置 Intel Virtualization Technology 设置成Enable------->点击Exit------->选择Save change&Reset------>选择YES。经过以上步骤就解决了win10系统没有虚拟机的权限的问题。
问题二、我新建了一个安卓7.0的模拟器,结果File Explorer的目录不显示,参考了这篇博客 http://m.blog.csdn.net/article/details?id=54586330 就可以显示File Explorer的目录下的文件了。
问题三、虽然显示了File Explorer目录下的文件,但是data文件夹却是空的,查找了网上资料,只要安卓6.0模拟器以下就可以显示。为此,我删除了安卓7.0的模拟器,新建了一个安卓5.1的模拟器,再次查看data文件夹,里面的内容不再为空。..data/data/com.example.outputStream(包名)/xx(文件) 。这样就找到了xx文件。
代码也很简单。activity_main.xml布局定义一个编辑框。
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" 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.outputstream.MainActivity"> <EditText android:id="@+id/edit_main" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="please enter message" /> </RelativeLayout>主界面代码如下:在编辑框里面输入内容,点击模拟器上面的back键,再到指定前面所说的目录下,查看你所保存的xx文件。
package com.example.outputstream; import android.content.Context; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.EditText; import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; public class MainActivity extends AppCompatActivity { private EditText editMain; private BufferedWriter bufferedWriter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editMain = (EditText) findViewById(R.id.edit_main); } @Override protected void onDestroy() { super.onDestroy(); save(editMain.getText().toString()); } private void save(String msg) { try { //经过缓冲过滤器包装的文件输出流 bufferedWriter = new BufferedWriter(new OutputStreamWriter(openFileOutput("xx", Context.MODE_PRIVATE))); //写入数据 bufferedWriter.write(msg); } catch (Exception e) { e.printStackTrace(); } finally { if (bufferedWriter != null) { try { bufferedWriter.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
更多推荐
所有评论(0)