Java FileWriter示例
时间:2020-02-23 14:35:01 来源:igfitidea点击:
java.io包的文件类类使Java中的文件写入java中的文件,就像a-b-c一样简单。
文件级写入文件作为字符流而不是字节流(如fileoutputStream中)。
与其输入导向的对应部分Filereader一样,文件类旨在一次写入"文本"的文件一个字符。
让我们查看FileWriter如何在Java中工作。
构造函数
Java中的文件类包含五个参数化构造函数,以允许程序员操作或者写入文件。
基于写入方式,可以覆盖或者添加文件。
让我们查看文件类中定义的构造函数。
- 文件符(文件文件) - 此构造函数接受java.io.file对象作为参数,并打开文件以进行编写。默认情况下,这会覆盖文件的任何先前内容。
- FileWriter(filedescriptor描述符) - 此构造函数创建文件符的对象,该对象接受java.io.filedescriptor对象作为参数,并打开描述符对象引用的文件。默认情况下,它会覆盖以前的内容。
- 文件夹(String FilePath) - 此构造函数接受java.lang.String对象作为参数,并打开字符串中包含的路径或者URI引用的文件,并覆盖文件中的任何现有内容。
- 文件符(文件文件,boolean ampend) - 此构造函数打开java.io.file和boolean值作为参数。如果布尔值为true,则不会覆盖现有内容,并附上新内容
- 文件夹(String FilePath,Boolean Append) - 此构造函数将打开"java.lang.string"和"布尔值"作为参数。如果布尔值为true,则不会覆盖现有内容,并附上新内容。
在最后两种情况下,如果输入的布尔值为"false",则覆盖内容。
如果找不到或者无法打开文件,则抛出FileNotFoundException。
方法
FileWriter类包含允许程序员将字符/文本写入文件的方法。
文件对象一次写入文件一个字符的内容。
让我们查看我们使用的方法来使用文件夹编写。
- 公共空白写入(int charval) - 此方法将单个字符(基于输入的ASCII值)写入文件。
- 公共void write(char arr [],int offset,int l) - 此方法将字符数组中的字符从偏移位置写入,以便为字符的长度为"l"。
- public void write(string str,int offset,int l) - 此方法将字符串对象的字符从偏移位置写入一个字符的长度为"L"。
- public void flush() - 刷新当前文件夹对象。
- public void close() - 关闭文件机对象以防止任何资源泄漏。
例子
让我们看一下用文件机类写入文件的示例。
代码:
import java.io.FileReader; import java.io.FileWriter; public class TestFileWriter { public static void main(String args[]){ String filePath = "C:/Users/Me/Desktop/sample.txt"; try{ FileWriter writeNew = new FileWriter(filePath); writeNew.write("Hello. I'm writing this new. "); writeNew.close(); System.out.println("New Write Complete. File Reads: \t"); readFileNow(filePath); FileWriter appendOld = new FileWriter(filePath,true); appendOld.write("Append works too"); appendOld.close(); System.out.println("Append Complete. File Reads: \t"); readFileNow(filePath); }catch(Exception e){ e.printStackTrace(); } } public static void readFileNow(String filePath){ try{ FileReader fileReader = new FileReader(filePath); int charRead = 0; while(charRead != -1){ charRead = fileReader.read(); System.out.print((char)charRead); } fileReader.close(); }catch(Exception e){ e.printStackTrace(); } } }
输出:
New Write Complete. File Reads:Hello. I'm writing this new. Append Complete. File Reads Hello. I'm writing this new. Append works too