现在的位置: 首页 > 综合 > 正文

Android之根据读取SD卡指定后缀名的文件

2018年02月18日 ⁄ 综合 ⁄ 共 1287字 ⁄ 字号 评论关闭
package com.TestView.layer;

import java.io.File;
import java.io.FilenameFilter;

import android.app.Activity;
import android.os.Environment;
import android.widget.Toast;

public class LayerListClass {

	Activity activity;
	private Toast toast;
	private File file;

	public LayerListClass(Activity activity) {
		this.activity = activity;
	}

	public String getFilesName() {
		file = new File(getLayerListBySdCard());
		if (!file.exists()) {
			showToast(getLayerListBySdCard() + "路径不存在");
			return null;
		}
		File[] files = file.listFiles(new FilenameFilter() {

			public boolean accept(File dir, String filename) {
				return filename.endsWith(".tpk");
			}
		});
		String aa = "";
		for (int i = 0; i < files.length; i++) {
			aa += files[i].getName() + "---->>";
		}
		showToast(aa);
		return aa;
	}

	private String getLayerListBySdCard() {
		if (!isSdCardExist()) {
			showToast("SD卡不存在");
			return null;
		}
		String sdpath = getSdCardPath();
		return sdpath;
	}

	/**
	 * 1、判断SD卡是否存在
	 * 
	 * @return
	 */
	private boolean isSdCardExist() {
		boolean isExist = Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);
		return isExist;
	}

	/**
	 * 2、获取SD卡目录
	 * 
	 * @return
	 */
	private String getSdCardPath() {
		String sdpath = "";
		sdpath = Environment.getExternalStorageDirectory().toString();
		sdpath = sdpath + "/ArcGIS";
		return sdpath;
	}

	/**
	 * 显示Toast内容
	 * 
	 * @param msg
	 */
	private void showToast(String msg) {
		if (toast == null) {
			toast = Toast.makeText(activity, msg, Toast.LENGTH_SHORT);
		} else {
			toast.setText(msg);
		}
		toast.show();
	}

}

抱歉!评论已关闭.