生活随笔
收集整理的這篇文章主要介紹了
Java IO(一)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【例1】創建一個新文件
import java.io.*;
class hello{public static void main(String[] args) {File f=new File("D:\\hello.txt");try{f.createNewFile();}catch (Exception e) {e.printStackTrace();}}
}【運行結果】:程序運行后,在D盤下會有一個名字為hello.txt的文件。
【例2】File類的兩個常量
import java.io.*;
class hello{public static void main(String[] args) {System.out.println(File.separator);System.out.println(File.pathSeparator);}
}【運行結果】:
\
;
此處多說幾句:有些同學可能會有疑問,我直接在windows下使用\進行分割不行嗎?當然是可以的。但是在linux下就不是\了。所以,要想使得我們的代碼跨平臺,更加健壯,所以,大家都采用這兩個常量吧,其實也多寫不了幾行。
現在我們使用File類中的常量改寫上面的代碼:
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator+"hello.txt";File f=new File(fileName);try{f.createNewFile();}catch (Exception e) {e.printStackTrace();}}
}我們可以看出,并沒有多寫多少代碼哦,所以建議使用File類中的常量。
刪除一個文件
/*** 刪除一個文件* */
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator+"hello.txt";File f=new File(fileName);if(f.exists()){f.delete();}else{System.out.println("文件不存在");}}
}
創建一個文件夾
/*** 創建一個文件夾* */
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator+"hello";File f=new File(fileName);f.mkdir();}
}
【運行結果】:D盤下多了一個hello文件夾
列出指定目錄的全部文件(包括隱藏文件):
/*** 使用list列出指定目錄的全部文件* */
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator;File f=new File(fileName);String[] str=f.list();for (int i = 0; i < str.length; i++) {System.out.println(str[i]);}}
}
【運行結果】:
$RECYCLE.BIN
360
360Downloads
360Rec
360SoftMove
Config.Msi
da
(你的運行結果應該和這個不一樣的,呵呵)
但是使用list返回的是String數組。而且列出的不是完整路徑,如果想列出完整路徑的話,需要使用listFiles.他返回的是File的數組
列出指定目錄的全部文件(包括隱藏文件):
** 使用listFiles列出指定目錄的全部文件* listFiles輸出的是完整路徑* */
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator;File f=new File(fileName);File[] str=f.listFiles();for (int i = 0; i < str.length; i++) {System.out.println(str[i]);}}
【運行結果】:
D:\$RECYCLE.BIN
D:\360
D:\360Downloads
D:\360Rec
D:\360SoftMove
D:\Config.Msi
D:\da
判斷一個指定的路徑是否為目錄
/** * 使用isDirectory判斷一個指定的路徑是否為目錄 * */import java.io.*;class hello{ ? ?public static void main(String[] args) { ? ? ? ?String fileName="D:"+File.separator; ? ? ? ?File f=new File(fileName); ? ? ? ?if(f.isDirectory()){ ? ? ? ? ? ?System.out.println("YES"); ? ? ? ?}else{ ? ? ? ? ? ?System.out.println("NO"); ? ? ? ?} ? ?}}【運行結果】:YES
搜索指定目錄的全部內容/*** 列出指定目錄的全部內容* */
import java.io.*;
class hello{public static void main(String[] args) {String fileName="D:"+File.separator;File f=new File(fileName);print(f);}public static void print(File f){if(f!=null){if(f.isDirectory()){File[] fileArray=f.listFiles();if(fileArray!=null){for (int i = 0; i < fileArray.length; i++) {//遞歸調用print(fileArray[i]);}}}else{System.out.println(f);}}}
}
【運行結果】:
D:\Tomcat6\work\Catalina\localhost\nevel\org\apache\jsp\framepages\web4welcome_jsp.java
D:\Tomcat6\work\Catalina\localhost\nevel\org\apache\jsp\help_005fhome_jsp.class
D:\Tomcat6\work\Catalina\localhost\nevel\org\apache\jsp\help_005fhome_jsp.java
.....
【使用RandomAccessFile寫入文件】
/*** 使用RandomAccessFile寫入文件* */
import java.io.*;
class hello{public static void main(String[] args) throws IOException {String fileName="D:"+File.separator+"hello.txt";File f=new File(fileName);RandomAccessFile demo=new RandomAccessFile(f,"rw");demo.writeBytes("asdsad");demo.writeInt(12);demo.writeBoolean(true);demo.writeChar('A');demo.writeFloat(1.21f);demo.writeDouble(12.123);demo.close(); }
}如果你此時打開hello.txt查看的話,會發現那是亂碼
轉載于:https://blog.51cto.com/alina64/1401331
總結
以上是生活随笔為你收集整理的Java IO(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。