2013-04-13 33 views
0

我想在文件中輸出一些數據,並且可以輕鬆地在文件中輸出數據。但是當我在文件中第二次輸出數據時,它會附加上以前的數據。我想要做的是清除以前的數據,只插入新數據,而不用舊數據附加新數據。下面是我的代碼:在Netlogo中寫入之前清除文件數據

 file-open "savedgame.txt" 

     foreach sort turtles [ 
    ask ? [ 
     file-print (turtlenumbers) // ; This appends the "turtlenumbers" with old data in 
           // ; file (if any). I want to clear file before 
           // ;writing "turtlenumbers" in the file 


     file-print "" 

    ] 
    ] 
    file-close 

回答

2

由於每file-open documentation in the NetLogo dictionnary

當打開書面文件操作,所有新的數據將被附加到 原始文件的末尾。如果沒有原始文件,則會在其位置創建一個新的 空白文件。 (您必須在該文件的目錄的寫 許可。)(如果你不想追加,但 想,如果你要替換該文件的現有內容,使用file-delete到 先刪除它,也許carefully內。不知道是否 它已經存在)

換句話說,將其添加爲您的第一行:

carefully [ file-delete "savedgame.txt" ] [ ] 
+0

非常感謝:)。那正是我所期待的。 – Rizwan606

相關問題