golang image.DecodeConfig image: unknown format
golang获取上传图片的宽和高:
package main import ( "fmt" "image" "io/ioutil" "os" "path/filepath" ) const dir_to_scan string = "/home/da/to_merge" func main() { files, _ := ioutil.ReadDir(dir_to_scan) for _, imgFile := range files { if reader, err := os.Open(filepath.Join(dir_to_scan, imgFile.Name())); err == nil { defer reader.Close() im, _, err := image.DecodeConfig(reader) if err != nil { fmt.Fprintf(os.Stderr, "%s: %v ", imgFile.Name(), err) continue } fmt.Printf("%s %d %d ", imgFile.Name(), im.Width, im.Height) } else { fmt.Println("Impossible to open the file:", err) } } }
当使用image.Decode处理图片文件时,如报image: unknown format 错误。
执行以上代码会报
·image: unknown format·
这是因为忘记引入包import _ "image/jpeg",image包不知道怎么Decode图片,需要导入"image/jpeg"去解码jpg图片。
gif和png图片需要导入相应"image/gif",“image/png”。
如这三种图片类型都用到,需要都导入。
import ( _"image/gif" _ "image/jpeg" _ "image/png" )
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2018-04-22 避免SSH连接因超时闲置断开
2018-04-22 macOS Sierra上ssh免密码登录linux服务器
2017-04-22 CentOS7上LNMP安装包一步搭建LNMP环境
2017-04-22 杭州考驾照-2017.4