在Netlogo中写入之前清除文件数据

时间:2013-04-13 08:11:13

标签: file file-io append clear 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

1 个答案:

答案 0 :(得分:2)

根据file-open documentation in the NetLogo dictionnary

  

在写入模式下打开文件时,所有新数据都将附加到   原始文件的结尾。如果没有原始文件,则为新文件   将在其位置创建空白文件。 (你必须写   文件目录中的权限。)(如果你不想追加,但是   想要替换文件的现有内容,请使用file-delete   如果您不确定是否可以在carefully内删除它   它已经存在。)

换句话说,将其添加为第一行:

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