Java是一種廣泛使用的編程語言,常用于開發(fā)桌面應用程序、Web應用程序以及Android應用程序等。在Java中,文件讀寫是實現(xiàn)數(shù)據(jù)交互的常見方法之一。Java提供了FileReader和FileWriter兩個類供我們使用,其中,F(xiàn)ileReader主要用于讀取文件,F(xiàn)ileWriter主要用于寫入文件。
在Java中,我們還可以使用RandomAccessFile類進行文件讀寫操作,它可以支持讀寫文件的任意位置。在RandomAccessFile類中,我們可以使用“r”和“rw”兩種模式進行文件的讀寫操作。
其中,“r”模式表示以只讀方式打開文件,而“rw”模式表示以讀寫方式打開文件。
下面是使用“r”模式讀取文件的代碼:
try { RandomAccessFile raf = new RandomAccessFile("test.txt", "r"); byte[] b = new byte[1024]; int len = raf.read(b); String str = new String(b, 0, len); System.out.println(str); raf.close(); } catch (IOException e) { e.printStackTrace(); }
在上面的代碼中,我們首先創(chuàng)建了一個RandomAccessFile對象,然后設(shè)置了文件名和模式。接著,我們定義了一個字節(jié)數(shù)組b,并使用read()方法讀取文件中的數(shù)據(jù),最后將讀取到的數(shù)據(jù)轉(zhuǎn)換為字符串并輸出。最后,我們關(guān)閉了文件。
下面是使用“rw”模式寫入文件的代碼:
try { RandomAccessFile raf = new RandomAccessFile("test.txt", "rw"); String str = "Hello World!"; byte[] b = str.getBytes(); raf.write(b); raf.close(); } catch (IOException e) { e.printStackTrace(); }
在上面的代碼中,我們同樣創(chuàng)建了一個RandomAccessFile對象,并設(shè)置了文件名和模式。接著,我們定義了一個字符串str,并將其轉(zhuǎn)換為字節(jié)數(shù)組b。然后,我們使用write()方法將b寫入文件中。最后,我們關(guān)閉了文件。
通過上面兩個例子的比較,我們可以發(fā)現(xiàn),“r”模式只能讀取文件中的數(shù)據(jù),而“rw”模式不僅能讀取文件中的數(shù)據(jù),還可以寫入文件。因此,在使用RandomAccessFile類時,我們需要根據(jù)實際需求選擇適當?shù)哪J竭M行文件的讀寫操作。