Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> 如何在安卓/data(而不是/data/data)目錄下進行文件的讀寫操作,安卓data

如何在安卓/data(而不是/data/data)目錄下進行文件的讀寫操作,安卓data

編輯:關於android開發

如何在安卓/data(而不是/data/data)目錄下進行文件的讀寫操作,安卓data


分析:Android默認是無法直接操作/data目錄的,只能讀寫程序自己的私有目錄,也就是/data/data/package name/下,默認只能操作這個目錄下的文件,也就是我們想直接讀寫/data是做不到的。 但是只要我們修改了/data目錄下的目標文件的權限就可以進行操作了。   example:在/data/sibon/var目錄下創建一個dir.ip文件,將輸入的數據存儲到dir.ip文件中。 1,修改權限(目標文件夾) initChmod("chmod 777 /data/sibon/var"); /**修改文件或文件夾的權限**/ private void initChmod(String command){ Process process = null; DataOutputStream os = null; try{ process = Runtime.getRuntime().exec("su"); os = new DataOutputStream(process.getOutpputStream()); os.writeBytes(command + "\n"); os.writeBytes("exit\n"); os.flush(); }catch(Exception e){ }finally{ try{ if(os != null){ os.close(); } process.destory(); }catch(Exception e){ } } }   2,進行寫文件操作 saveText("start saveText now......"); /**向dir.ip中寫入數據**/ private void saveText(String string){ File file = new File("/data/sibon/var/dir.ip"); BufferedWriter bw = null; try{ //第二個參數的意義是說是否可以以append的方式添加數據 bw = new BufferedWriter(new FileWriter(file,false)); bw.write(string); bw.flush(); System.out.println("寫入數據成功"); }catch(Exception e){ e.printStackTrace(); } }   3,修改dir.ip的權限(讓其可讀可寫) initChmod("chmod 666 /data/sibon/var/dir.ip");   4,(驗證是否可以讀取dir.ip中的數據) readTxtFile(String filePath); /**讀取txt文本數據(一行一行的讀取)**/ private static String readTxtFile(String strFilePath){ String path = strFilePath; String context = "";//文本內容字符串 //打開文件 File file = new File(path); //如果path是傳遞過來的參數,可以做一個非目錄的判斷 if(file.isDirectory()){ System.out.println("-----------------"); } else { try{ InputStream is = new FileInputStream(file); if(is != null){ InputStreamReader inputreader = new InputStreamReader(instream); BufferedReader buffreader = new BufferedReader(inputreader); String line; //分行讀取 while((line = buffreader.readLine()) != null){ content += line + "\n"; } is.close(); } } catch (java.io.FileNotFoundException e) { System.out.println("The File doesn't not exist."); } catch (IOException e) { System.out.println(""+ e.getMessage()); } } return content; } }          

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved