第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

文本文件被覆蓋而不是保存的問(wèn)題

文本文件被覆蓋而不是保存的問(wèn)題

函數(shù)式編程 2022-09-01 17:44:27
我有一個(gè)文本文件,我試圖通過(guò)它在我的程序中寫(xiě)入。每當(dāng)用戶想要將圖書(shū)添加到圖書(shū)館目錄時(shí),圖書(shū)詳細(xì)信息都將保存到文本文件中。問(wèn)題是我的程序成功地寫(xiě)入了文本文件,但當(dāng)我嘗試添加另一本書(shū)時(shí),它只會(huì)一遍又一遍地覆蓋第一行。我有一個(gè)從Book類(lèi)繼承的ArrayList,它包含一本書(shū)的特定屬性(標(biāo)題,作者,出版商等)。在我當(dāng)前的程序中,我創(chuàng)建了一個(gè)名為bookInfo的變量,該變量存儲(chǔ)來(lái)自各自jTextFields的book屬性的String和int值。我相信它是一個(gè)“類(lèi)變量”(但我可能是錯(cuò)的),因?yàn)槲覍⑵涑跏蓟癁闀?shū)籍類(lèi)的構(gòu)造函數(shù)Book bookInfo = new Book(bookTitle, author, publisher, brandCallNumber, numberOfCopies);然后將此變量添加到 arrayList 中,并在程序中調(diào)用 WriteToFile() 方法。AddBookDialog 類(lèi)的代碼public class AddBookDialog extends javax.swing.JDialog {ArrayList<Book> books = new ArrayList<Book>();/** * Creates new form AddBook */public AddBookDialog(java.awt.Frame parent, boolean modal) {    super(parent, modal);    initComponents();}               private void jButtonSaveToLibraryActionPerformed(java.awt.event.ActionEvent evt) {                                                         String bookTitle = jTextFieldTitle.getText();    String author = jTextFieldAuthor.getText();    String publisher = jTextFieldPublisher.getText();    String brandCallNumber = jTextFieldBranchCallNumber.getText();    int numberOfCopies = Integer.parseInt(jTextFieldCopies.getText());        Book bookInfo = new Book(bookTitle, author, publisher, brandCallNumber, numberOfCopies);        books.add(bookInfo);        WriteToFile();    this.setVisible(false);}                                                    private void WriteToFile(){    WriteFile wf = new WriteFile("BookDetails.txt");        for(int i = 0; i < books.size(); i++)    {     Book b = books.get(i);     String bookDetails = b.getBookTitle() + " : " + b.getAuthorName() + " : " + b.getPublisherName() + " : " + b.getBranchCallNumber() + " : " + b.getNumberOfCopies();          wf.write(bookDetails);    }    wf.close();}我希望我的程序做的是不斷添加到文本文件中。如果我添加另一本書(shū),那么文本文件的內(nèi)容應(yīng)該包括哈利·波特 : JK 羅琳 : 學(xué)術(shù) : FIC 羅爾 : 14哈姆雷特 : 威廉·莎士比亞 : 企鵝 : FIC 沙克 : 23相反,當(dāng)我嘗試將另一本書(shū)寫(xiě)入文件時(shí),它會(huì)覆蓋第一行。哈姆雷特 : 威廉·莎士比亞 : 企鵝 : FIC 沙克 : 23哈利·波特的書(shū)細(xì)節(jié)被覆蓋了
查看完整描述

1 回答

?
PIPIONE

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超9個(gè)贊

根據(jù)Javadoc的說(shuō)法

public FileOutputStream(File file, boolean append) throw FileNotFoundException

創(chuàng)建文件輸出流以寫(xiě)入由指定的 File 對(duì)象表示的文件。如果第二個(gè)參數(shù)為 true,則字節(jié)將寫(xiě)入文件末尾而不是開(kāi)頭。將創(chuàng)建一個(gè)新的 FileDescriptor 對(duì)象來(lái)表示此文件連接。

第二個(gè)參數(shù) () 用于控制是否追加到現(xiàn)有文件而不是覆蓋它。boolean append

因此,在您的情況下,您應(yīng)該作為第二個(gè)參數(shù)傳遞true


查看完整回答
反對(duì) 回復(fù) 2022-09-01
  • 1 回答
  • 0 關(guān)注
  • 69 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)