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

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

如何在 Go 中驗(yàn)證文件是否包含要從 ioutil.ReadFile 編組的內(nèi)容

如何在 Go 中驗(yàn)證文件是否包含要從 ioutil.ReadFile 編組的內(nèi)容

Go
人到中年有點(diǎn)甜 2022-01-04 18:48:01
我正在嘗試使用文件而不是數(shù)據(jù)庫來啟動(dòng)和運(yùn)行原型。我有一個(gè)程序,它 (1) 將現(xiàn)有內(nèi)容從文件讀取到地圖,(2) 獲取將內(nèi)容添加到地圖的 JSON POST,(3) 在退出時(shí)寫入文件。首先,文件沒有被創(chuàng)建。然后我創(chuàng)建了一個(gè)空文件。它沒有被寫入。我正在嘗試讀取文件,確定是否存在現(xiàn)有內(nèi)容。如果沒有現(xiàn)有內(nèi)容,請創(chuàng)建一個(gè)空白地圖。如果存在現(xiàn)有內(nèi)容,請將其解組到新地圖中。  func writeDB() {    eventDBJSON, err := json.Marshal(eventDB)    if err != nil {        panic(err)    }    err2 := ioutil.WriteFile("/Users/sarah/go/dat.txt", eventDBJSON, 0777)    if err2 != nil {        panic(err2)    }}func main() {    dat, err := ioutil.ReadFile("/Users/sarah/go/dat.txt")    if err != nil {        panic(err)    }    if dat == nil {        eventDB = DB{            events: map[string]event{},        }    } else {        if err2 := json.Unmarshal(dat, &eventDB); err2 != nil {            panic(err2)        }    }    router := httprouter.New()    router.POST("/join", JoinEvent)    router.POST("/create", CreateEvent)    log.Fatal(http.ListenAndServe(":8080", router))    defer writeDB()}
查看完整描述

2 回答

?
胡子哥哥

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

服務(wù)器無法訪問defer writeDB().

http.ListenAndServe 阻塞,如果它確實(shí)返回了任何東西,你就會(huì)記錄它。它會(huì)在那個(gè)時(shí)候退出你的應(yīng)用程序。

您無法攔截應(yīng)用程序退出、獲取 SIGKILL、機(jī)器斷電等的所有方式。

我假設(shè)你真的只想寫一些代碼,反彈服務(wù)器,重復(fù)

如果是這樣,那么 Ctrl-C 就足夠了。

如果要在 Ctrl-C 上編寫文件,請查看信號(hào)包。

此外,在函數(shù)的最后一行 defer 真的沒有任何意義,因?yàn)?defer 基本上意味著“最后做這件事”。


查看完整回答
反對 回復(fù) 2022-01-04
?
互換的青春

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

您可以使用(*os.File).Stat()來獲取包含其大小的文件的FileInfo


   file, err := os.Open( filepath ) 

    if err != nil {

        // handle error

    }


    fi, err := file.Stat()

    if err != nil {

      // handle error

    }


   s := fi.Size()


查看完整回答
反對 回復(fù) 2022-01-04
  • 2 回答
  • 0 關(guān)注
  • 198 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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