讀取android根目錄下的檔案或檔案夾執行個體_Android

來源:互聯網
上載者:User

最近幾天真的是各種意義上的忙,忙著考試,還要忙著課程設計,手上又有外包的項目,另一邊學校的項目還要搞,自己的東西還在文檔階段,真的是讓人想死啊!!

近半個月來,C#這方面的編碼比較多,android和java這裡完全擱置了,於是抽空寫個小例子。

這個例子非常小,就是一個讀取android根目錄下的檔案夾或檔案,當做熱一下身。

@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("請勿輸入空白的關鍵詞!!");      }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()逐個擷取它們的相對路徑。

例子的運行結果如:

當然我們需要在根檔案中添加許可權:

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

由於例子實在是太小了,整片文章的篇幅不長,所以特意在文章的後面列出所有的檔案操作以供大家參考:

一.SDK的操作

1、判斷SD卡是否插入

  Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 

這個在我之前做的東西中就非常有用,因為涉及到SDK的讀取,自然就需要先判斷SDK是否插入。

2、獲得sd卡根目錄:

File skRoot = Environment.getExternalStorageDirectory(); 

二.私人目錄下的檔案操作:

1、獲得私人根目錄:

File fileRoot = Context.getFilesDir()+"\"; 

2.檔案夾或檔案夾操作:

(1)獲得檔案夾和檔案路徑

a.獲得檔案或檔案夾的絕對路徑和相對路徑。區別

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(); 

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援雲棲社區。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.