github.com/easysoft/zendata@v0.0.0-20240513203326-705bd5a7fd67/cmd/test/others/func/import/pc-os.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"strings"
     6  
     7  	"github.com/easysoft/zendata/cmd/test/others/func/comm"
     8  	"github.com/easysoft/zendata/cmd/test/others/func/model"
     9  	fileUtils "github.com/easysoft/zendata/pkg/utils/file"
    10  )
    11  
    12  func main() {
    13  	filePath := "/Users/aaron/work/zentao/product/zd/行业数据/电脑系统.txt"
    14  
    15  	db := comm.GetDB()
    16  	err := db.Exec(fmt.Sprintf(comm.TruncateTable, model.PcOs{}.TableName())).Error
    17  	if err != nil {
    18  		panic(err)
    19  	}
    20  
    21  	content := fileUtils.ReadFile(filePath)
    22  
    23  	for _, line := range strings.Split(content, "\n") {
    24  		arr := strings.Split(strings.TrimSpace(line), "|")
    25  		shortName := strings.TrimSpace(arr[0])
    26  		name := strings.TrimSpace(arr[1])
    27  		version := strings.TrimSpace(arr[2])
    28  		website := strings.TrimSpace(arr[3])
    29  
    30  		po := model.PcOs{
    31  			Name:      name,
    32  			ShortName: shortName,
    33  			Version:   version,
    34  			Website:   website,
    35  		}
    36  
    37  		db.Save(&po)
    38  	}
    39  }