2016-08-02 12 views
1

我使用此代碼使用此代碼動態提取從目錄模板文件名:如何將類型[] os.FileInfo轉換爲字符串?

files, _ := ioutil.ReadDir("./views") 
    htmlFiles := ".html" 
    for _, f := range files { 
     if strings.Contains(files, htmlFiles) { 
      fmt.Println(f.Name()) 
     } 
    } 

,我得到這個錯誤:

cannot use files (type []os.FileInfo) as type string in argument to strings.Contains 

那麼,如何type []os.FileInfo轉換成string(或如何以更簡單的方式)?

回答

2

ioutil.ReadDir返回的值是[]os.FileInfo,它是一個接口片。沒有通用的方法將其轉換爲有意義的字符串。您想單獨比較每個文件的名稱:

files, err := ioutil.ReadDir("./views") 
if err != nil { 
    log.Fatal(err) 
} 

for _, f := range files { 
    if strings.HasSuffix(f.Name(), ".html") { 
     fmt.Println(f.Name()) 
    } 
} 
相關問題