LoginSignup
3
1

More than 3 years have passed since last update.

【Go/Gin】フォームから受け取ったCSVファイルをパースする

Last updated at Posted at 2019-07-26

Go言語の案件で、フォームからCSVファイルを受け取ってインポートする対応があり、その際に実装した内容のメモ

ソースコード

func CsvImportPostHandler(context *gin.Context) {
    // CSVファイル取得(csvfile=フォームのname属性の値)
    file, header , err := context.Request.FormFile("csvfile")

    // ファイル名
    fmt.Println(header.Filename)

    // ファイル読み取り
    reader := csv.NewReader(file)
    reader.LazyQuotes = true // ダブルクオートを厳密にチェックしない

    // レコード読み取り
    var line []string
    for {
        // 行毎のデータ取得してlineに格納
        line, err = reader.Read()
        if err != nil {
            break
        }

        // データ表示
        for _, s := range line {
            fmt.Println(s)
        }        
    }
}

参考サイト

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1