Android 文件操做经常使用方法:java
一.在AndroidManifest.xml中添加文件操做的权限:android
<!--往sdcard中写入数据的权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!--在sdcard中建立/删除文件的权限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
建立文件:app
方法1:(不建议用)spa
String path = "/sdcard/fileName"; File file = new File(path);
方法2:(推荐)code
// File.separator 至关于"/" String path = Environment.getExternalStorageDirectory().getPath() + File.separator + "test.txt"; File fileNam = new File(path);
建立一个临时文件: xml
/** * 若是让咱们本身建立临时文件时,咱们还得拼接文件名,Android为咱们提供了更快捷的方式 * prefix表明:文件名前缀,suffix表明:生成临时文件的格式如:.txt .amr .jpg .png等等 */ try { //此处未指定路径,它会默认建立在SD卡根目录下 File tempFile = File.createTempFile("前缀", "格式"); //记得加入try语句块中 //若是想要指定路径,则能够这样写 File tempFile2 = File.createTempFile("前缀", "格式",new File("指定临时文件路径")); } catch (IOException e) { e.printStackTrace(); }
isDirectory() 与 isFile()的小区别:是不是文件夹,isFile是不是文件get
File file2 = new File(path3); //由于路径是本身指定的, if(!file2.exists()){ //方式一: try { //这个方法指在指定路径下建立一个empty文件 file2.createNewFile(); } catch (IOException e) { e.printStackTrace(); } //方式二: //建立一个指定目录下的文件,但这个方法不能建立多个目录 file2.mkdir(); //方式三: //建立一个指定目录下的文件,与上面不一样的是,此方法能够建立多个目录哦,经常使用的建立文件的方法 file2.mkdirs(); }
读取系统中的文件io
public boolean isHdmiConnected() { Runtime mRuntime = Runtime.getRuntime(); try { // Process中封装了返回的结果和执行错误的结果 Process mProcess = mRuntime.exec("cat /proc/driver/rtc"); BufferedReader mReader = new BufferedReader(new InputStreamReader(mProcess.getInputStream())); StringBuffer mRespBuff = new StringBuffer(); char[] buff = new char[1024]; int ch = 0; // while ((ch = mReader.read(buff)) != -1) { // mRespBuff.append(buff, 0, ch); // } ch = mReader.read(buff, 0, 12); mRespBuff.append(buff, 0, ch); mReader.close(); if (buff[11] == '0') { Plog.d(TAG, "HdmiConnectted"); return true; } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return false; }