csv文件读取时,由于出现双引号,导致数据异常问题

2. 问题描述?

csv文件读取时,由于出现双引号,导致数据异常,猜测双引号应该是是转义闭合了

tmp.csv文件如下:

11,as"hello"-s,123,ppsid
11,"hello"-s,123,ppsid

主代码:

func Test01() {
    opencast, err := os.Open("./uploads/tmp.csv")
    if err != nil {
        log.Println("csv文件打开失败!")
    }
    defer opencast.Close()

    ReadCsv := csv.NewReader(opencast)

    ReadCsv.LazyQuotes = true
    ReadCsv.FieldsPerRecord = -1

    for {
        read, err := ReadCsv.Read()
        if err != nil && err != io.EOF {
            log.Fatalf("can not read, err is %+v", err)
        }
        if err == io.EOF {
            break
        }

        fmt.Println(read[1])
    }

}

3. 您期望得到的结果?

as"hello"-s
"hello"-s

4. 您实际得到的结果?

as"hello"-s
hello"-s,123,ppsid
讨论数量: 2

用下面这个:

11,as"hello"-s,123,ppsid
11,"""hello""-s",123,ppsid
2年前 评论
setArr (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!