讀取android根目錄下的文件或文件夾實(shí)例
最近幾天真的是各種意義上的忙,忙著考試,還要忙著課程設(shè)計(jì),手上又有外包的項(xiàng)目,另一邊學(xué)校的項(xiàng)目還要搞,自己的東西還在文檔階段,真的是讓人想死?。?!
近半個(gè)月來,C#這方面的編碼比較多,android和java這里完全擱置了,于是抽空寫個(gè)小例子。
這個(gè)例子非常小,就是一個(gè)讀取android根目錄下的文件夾或文件,當(dāng)做熱一下身。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText keywordText = (EditText)this.findViewById(R.id.keyword);
Button button = (Button)this.findViewById(R.id.button);
TextView result = (TextView)this.findViewById(R.id.result);
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
String keyword = keywordText.getText().toString();
if (keyword.equals("")) {
result.setText("請勿輸入空白的關(guān)鍵詞!!");
}else {
result.setText(searchFile(keyword));
}
}
});
}
private String searchFile(String keyword) {
String result = "";
File[] files = new File("/").listFiles();
for (File file : files) {
if (fike.getName().indexOf(keyword) >= 0) {
result += file.getPath() + "\n";
}
}
if (result.equals("")){
result = "找不到文件!!";
}
return result;
}
首先,我們需要通過File.listFiles()方法獲取文件夾下所有文件或者文件夾的名字,這里的文件夾的路徑是"/",也就是根目錄。然后我們再通過getPath()逐個(gè)獲取它們的相對路徑。
例子的運(yùn)行結(jié)果如:

當(dāng)然我們需要在根文件中添加權(quán)限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
由于例子實(shí)在是太小了,整片文章的篇幅不長,所以特意在文章的后面列出所有的文件操作以供大家參考:
一.SDK的操作
1、判斷SD卡是否插入
Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
這個(gè)在我之前做的東西中就非常有用,因?yàn)樯婕暗絊DK的讀取,自然就需要先判斷SDK是否插入。
2、獲得sd卡根目錄:
File skRoot = Environment.getExternalStorageDirectory();
二.私有目錄下的文件操作:
1、獲得私有根目錄:
File fileRoot = Context.getFilesDir()+"\";
2.文件夾或文件夾操作:
(1)獲得文件夾和文件路徑
a.獲得文件或文件夾的絕對路徑和相對路徑。區(qū)別
String path = File.getPath();//相對 String path = File.getAbsoultePath();//絕對
b.獲得文件或文件夾的父目錄
String parentPath = File.getParent();
c.獲得文件或文件夾的名稱:
String Name = File.getName();
(2)建立文件或文件夾
File.mkDir(); //建立文件夾 File.createNewFile();//建立文件
(3)判斷是文件或文件夾
File.isDirectory() File.isDirectory()
(4)列出文件夾下的所有文件和文件夾名
File[] files = File.listFiles();
(5)修改文件夾和文件名
File.renameTo(dest);
(6)刪除文件夾或文件
File.delete();
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android基于騰訊云實(shí)時(shí)音視頻仿微信視頻通話最小化懸浮
這篇文章主要為大家詳細(xì)介紹了Android基于騰訊云實(shí)時(shí)音視頻實(shí)現(xiàn)類似微信視頻通話最小化懸浮,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
Android利用Fragment實(shí)現(xiàn)Tab選項(xiàng)卡效果
這篇文章主要為大家詳細(xì)介紹了Android利用Fragment實(shí)現(xiàn)Tab選項(xiàng)卡效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08
Android實(shí)現(xiàn)側(cè)滑只需一步
這篇文章主要介紹了Android實(shí)現(xiàn)側(cè)滑只需一步,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
Android 簡單的彈出框(在屏幕中間,傳string[],根據(jù)內(nèi)容框框大小自適應(yīng))
這篇文章主要介紹了Android 簡單的彈出框(在屏幕中間,傳string[],根據(jù)內(nèi)容框框大小自適應(yīng)),需要的朋友可以參考下2017-04-04
Android中TextView局部變色功能實(shí)現(xiàn)
這篇文章給大家詳細(xì)講解了一下Android中TextView實(shí)現(xiàn)部分文字不同顏色的功能實(shí)現(xiàn)過程,有這方面需要的朋友們一起學(xué)習(xí)下吧。2017-12-12
Android Fragment中使用SurfaceView切換時(shí)閃一下黑屏的解決辦法
本篇文章主要給大家分享Android Fragment中使用SurfaceView切換時(shí)閃一下黑屏的解決辦法,需要的朋友可以參考下2015-09-09

