2 知识点怎么获取sd卡的大小
来源:互联网 发布:沉迷网络的坏处 编辑:程序博客网 时间:2024/05/18 02:44
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" 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=".MainActivity" > <TextView android:id="@+id/size" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /></RelativeLayout>
Activity
package org.sicn.lee.getsddata;import java.io.File;import android.app.Activity;import android.os.Bundle;import android.os.Environment;import android.os.StatFs;import android.view.Menu;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {private TextView size; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.activity_main); this.size=(TextView) super.findViewById(R.id.size); File file=Environment.getExternalStorageDirectory(); StatFs statfs=new StatFs(file.getPath()); long blockSize=statfs.getBlockSize(); long totalBlocks=statfs.getBlockCount(); long totalBytes=blockSize*totalBlocks; this.size.setText("SD卡大小:"+TextFormater.getDataSize(totalBytes)); Toast.makeText(this,"SD卡大小:"+TextFormater.getDataSize(totalBytes),Toast.LENGTH_LONG).show(); } @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; } }
格式化大小的工具类:
package org.sicn.lee.getsddata;import java.text.DecimalFormat;public class TextFormater {/** * 返回byte的数据大小对应的文本 * * @param size * @return */public static String getDataSize(long size) {if (size < 0) {size = 0;}DecimalFormat formater = new DecimalFormat("####.00");if (size < 1024) {return size + "bytes";} else if (size < 1024 * 1024) {float kbsize = size / 1024f;return formater.format(kbsize) + "KB";} else if (size < 1024 * 1024 * 1024) {float mbsize = size / 1024f / 1024f;return formater.format(mbsize) + "MB";} else if (size < 1024 * 1024 * 1024 * 1024) {float gbsize = size / 1024f / 1024f / 1024f;return formater.format(gbsize) + "GB";} else {return "size: error";}}/** * 返回kb的数据大小对应的文本 * * @param size * @return */public static String getKBDataSize(long size) {if (size < 0) {size = 0;}return getDataSize(size * 1024);}}
0 0
- 2 知识点怎么获取sd卡的大小
- Android 获取SD卡的大小 M
- Android 获取SD卡大小
- Android获取SD卡大小
- C语言编程如何获取SD卡的块大小
- 磁盘和sd卡的可用空间大小获取
- 获取SD的大小及可用空间
- 存储到SD卡,获取SD的大小及可用空间 (重点)
- 存储到SD卡,获取SD的大小及可用空间
- Android获取SD卡内存空间大小实例
- 获取SD卡和手机内存空间大小
- 获取Android手机SD卡容量大小
- 分析setting源代码获取sd卡大小
- Android中如何获取sd卡大小
- Android_获取手机上SD卡和内存中的可用空间的大小
- Android 获取SD路径,存储空间大小的方法
- Android获取SD卡总容量,可用大小,机身内存总容量及可用大小的系统方法
- Android获取SD卡总容量,可用大小,机身内存总容量及可用大小的系统方法
- tasklist详解
- vector和string最重要的区别
- 大学要毕业了
- VS2010配置OpenCV
- light table
- 2 知识点怎么获取sd卡的大小
- Obscure C++ Features
- 查询转换-视图合并
- taskkill详解
- java教程(四)关于MVC
- 【C++】浙大PAT (Basic Level)1004. 成绩排名 (20)
- 最长的有效括号内子括号的长度(来自 庞果)修改后的算法
- 2013年狗血的实习工作总结
- JAVA系列之对象的序列化与反序列化