public void shellExec() {
Runtime mRuntime = Runtime.getRuntime(); //执行命令的方法
try {
//Process中封装了返回的结果和执行错误的结果
Process mProcess = mRuntime.exec("ls -l"); //加入参数
//使用BufferReader缓冲各个字符,实现高效读取
//InputStreamReader将执行命令后得到的字节流数据转化为字符流
//mProcess.getInputStream()获取命令执行后的的字节流结果
BufferedReader mReader = new BufferedReader(new InputStreamReader(mProcess.getInputStream()));
//实例化一个字符缓冲区
StringBuffer mRespBuff = new StringBuffer();
//实例化并初始化一个大小为1024的字符缓冲区,char类型
char[] buff = new char[1024];
int ch = 0;
//read()方法读取内容到buff缓冲区中,大小为buff的大小,返回一个整型值,即内容的长度
//如果长度不为null
while ((ch = mReader.read(buff)) != -1) {
//就将缓冲区buff的内容填进字符缓冲区
mRespBuff.append(buff, 0, ch);
}
//结束缓冲
mReader.close();
//弹出结果
Toast.makeText(this,mRespBuff.toString(),Toast.LENGTH_SHORT).show();
//异常处理
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
文件夹和文件的创建,删除
//实例化一个文件对象,传入文件夹目录
File file = new File("/mnt/sdcard/work/mywork");
//实例化一个文件对象,传入文件名路径。
File mFile = new File("/mnt/sdcard/work/zhiyuan.txt");
//判断文件是否存在,存在就删除
if (mFile.exists()){
mFile.delete();
}
try {
//创建文件
mFile.createNewFile();
//给一个提示,显示创建成功
Toast.makeText(getApplicationContext(), "文件创建成功", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
//判断文件夹是否存在,如果不存在就创建,否则不创建
if (!file.exists()) {
//通过file的mkdirs()方法创建<span style="color:#FF0000;">目录中包含却不存在</span>的文件夹
file.mkdirs();
}
权限:拥有外部存储器的写权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
转自:http://blog.csdn.net/lixiang_Y/article/details/54946199?locationNum=2&fps=1