打開檔案選擇器
<code>private</code> <code>void</code> <code>showFileChooser() {</code>
<code> </code><code>Intent intent =</code><code>new</code> <code>Intent(Intent.ACTION_GET_CONTENT);</code>
<code> </code><code>intent.setType(</code><code>"*/*"</code><code>);</code>
<code> </code><code>intent.addCategory(Intent.CATEGORY_OPENABLE);</code>
<code> </code><code>try</code> <code>{</code>
<code> </code><code>startActivityForResult( Intent.createChooser(intent,</code><code>"Select a File to Upload"</code><code>), FILE_SELECT_CODE);</code>
<code> </code><code>}</code><code>catch</code> <code>(android.content.ActivityNotFoundException ex) {</code>
<code> </code><code>Toast.makeText(</code><code>this</code><code>,</code><code>"Please install a File Manager."</code><code>, Toast.LENGTH_SHORT).show();</code>
<code> </code><code>}</code>
<code>}</code>
選擇的結果
<code>@Override</code>
<code>protected</code> <code>void</code> <code>onActivityResult(</code><code>int</code> <code>requestCode,</code><code>int</code> <code>resultCode, Intent data) {</code>
<code> </code><code>switch</code> <code>(requestCode) {</code>
<code> </code><code>case</code> <code>FILE_SELECT_CODE: </code>
<code> </code><code>if</code> <code>(resultCode == RESULT_OK) { </code>
<code> </code><code>// Get the Uri of the selected file</code>
<code> </code><code>Uri uri = data.getData();</code>
<code> </code><code>String path = FileUtils.getPath(</code><code>this</code><code>, uri);</code>
<code> </code><code>} </code>
<code> </code><code>break</code><code>;</code>
<code>super</code><code>.onActivityResult(requestCode, resultCode, data);</code>
FileUtils檔案
<code>public</code> <code>class</code> <code>FileUtils {</code>
<code> </code><code>public</code> <code>static</code> <code>String getPath(Context context, Uri uri) {</code>
<code> </code><code>if</code> <code>(</code><code>"content"</code><code>.equalsIgnoreCase(uri.getScheme())) {</code>
<code> </code><code>String[] projection = {</code><code>"_data"</code> <code>};</code>
<code> </code><code>Cursor cursor =</code><code>null</code><code>;</code>
<code> </code><code>try</code> <code>{</code>
<code> </code><code>cursor = context.getContentResolver().query(uri, projection,</code><code>null</code><code>,</code><code>null</code><code>,</code><code>null</code><code>);</code>
<code> </code><code>int</code> <code>column_index = cursor.getColumnIndexOrThrow(</code><code>"_data"</code><code>);</code>
<code> </code><code>if</code> <code>(cursor.moveToFirst()) {</code>
<code> </code><code>return</code> <code>cursor.getString(column_index);</code>
<code> </code><code>}</code>
<code> </code><code>}</code><code>catch</code> <code>(Exception e) {</code>
<code> </code><code>// Eat it</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>else</code> <code>if</code> <code>(</code><code>"file"</code><code>.equalsIgnoreCase(uri.getScheme())) {</code>
<code> </code><code>return</code> <code>uri.getPath();</code>
<code> </code><code>return</code> <code>null</code><code>;</code>
這個很簡單。
本文轉自Work Hard Work Smart部落格園部落格,原文連結:http://www.cnblogs.com/linlf03/p/3267732.html,如需轉載請自行聯系原作者