V2版本: 改进操作界面,统一表单样式,更多工具支持批量生成,欢迎使用 到达~


文库 阅读
作者: xiaoyu 12/22 21:57:19

golang 打开表格出错 excelize.OpenFile zip: not a valid zip file

原代码


package main

import (
	"fmt"
	// "github.com/360EntSecGroup-Skylar/excelize"
	"github.com/xuri/excelize/v2"
)

func main() {
	f, err := excelize.OpenFile("Book2.xlsx")
	if err != nil {
		fmt.Println(err)
		return
	}
}

方法一

可能的问题,1是xlsx的头信息不一样,导致这个库不支持。2是用旧版本生成的.xlsx这个库也不支持。当然1的可能性大。

可用解决办法,使用go程序创建的.xlsx模板,把所有内容复制在这个模板里,再传到后台就能打开。


// Create a new sheet.
func createXlsx() {
	f := excelize.NewFile()
	index := f.NewSheet("Sheet2")
	f.SetCellValue("Sheet2", "A2", "Hello world.")
	f.SetCellValue("Sheet1", "B2", 100)
	f.SetActiveSheet(index)
	if err := f.SaveAs("Book1.xlsx"); err != nil {
		fmt.Println(err)
	}
}

方法二

另外一个解决方法是使用.csv格式,简单方便没有这些兼容性问题。

问题参考:https://github.com/qax-os/excelize/issues/207

About

excelize.OpenFile zip: not a valid zip file

Resources

发布

未发布任何资源
首页 我的 定制
定制咨询
微信二维码
扫一扫上面的二维码,加我为朋友。
微信扫码周一至周六服务
接定制开发需求