golang读取json文件使用json.Unmarsh 报“invalid character ‘ï‘ looking for beginning of value”错误

  • Post author:
  • Post category:golang




1. 原因分析:
由于使用了utf-BOM的编码格式所导致的,将前缀去掉即可


2. 解决方法

file, err := os.Open(filePath)
	if err != nil {
		return nil, err
	}
	defer file.Close()
	data, err := io.ReadAll(file)
	//进行去除
	data = bytes.TrimPrefix(data, []byte("\xef\xbb\xbf")) // Or []byte{239, 187, 191}
	if err != nil {
		return nil, err
	}
	var res interface{}
	json.Unmarshal(data, &res)



版权声明:本文为kongzhonliuxing原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。