       catch e
         error "Write senkaDetail error!#{e}"
     addData: (data) ->
+      filename = timeToString data[0], true
       try
-        fs.appendFileSync join(APPDATA_PATH, 'hairstrength', "#{@state.memberId}", 'data'), "#{data}\n", 'utf-8'
+        fs.appendFileSync join(APPDATA_PATH, 'hairstrength', "#{@state.memberId}", "#{filename}"), "#{data}\n", 'utf-8'
       catch e
         error "Write senkaData error!#{e}"
     getDataFromFile: (memberId, exp) ->
+      filename = timeToString getRefreshTime(''), true
       try
         fs.ensureDirSync join(APPDATA_PATH, 'hairstrength', memberId)
         baseDetail = fs.readJSONSync join(APPDATA_PATH, 'hairstrength', memberId, 'detail.json')
-        data = fs.readFileSync join(APPDATA_PATH, 'hairstrength', memberId, 'data'), 'utf-8'
+        data = fs.readFileSync join(APPDATA_PATH, 'hairstrength', memberId, "#{filename}"), 'utf-8'
       catch e
         error "Read file form hairstrength error!#{e}"
       if !baseDetail?

    checkUpdate: ->
      {isUpdated, baseDetail} = @state
      flag = true
      if isUpdated[0] 
        for check, idx in baseDetail.rankListChecked
          if check and !isUpdated[idx + 1]
            flag = false
          else 
            updatedFlag = false

      flag
    setPresumedSenka: (presumedSenka) ->
      {baseDetail} = @state

      else if flag and !updatedFlag
        @saveData baseDetail
        window.removeEventListener 'game.response', @handleRefreshList
      @setState
        updatedFlag: flag
    render: ->
      <div>
