2 dazhi3219321 dazhi3219321 于 2016.05.08 18:46 提问

读取sdcard的可用内存大小,为什么读的确实手机的可用内存呢?????跪求大神!!!

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private TextView mTextView;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView = (TextView) findViewById(R.id.vt_show);
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
File file = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(file.getPath());
long blockSize = stat.getBlockSizeLong();
long availableBlocks = stat.getAvailableBlocksLong();
String data = Formatter.formatFileSize(this, blockSize * availableBlocks);
mTextView.setText(data);
}
}
}

加载的sdcard权限:

package="com.example.administrator.my0000000application">

<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<application

1个回答

qq_15950325
qq_15950325   2016.05.08 18:52

首先你应该要判断SD卡是不是不存在,另外你要判断目录没有,没有的就先创建目录,另外还有File.Separate方法
0、获取sd卡路径。
1、讲述 Environment 类。
2、讲述 StatFs 类。
3、完整例子读取 SDCard 内存
详情查看http://www.jb51.net/article/61038.htm 希望能帮助到您!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!