go - 如何根据 Go 中的名称猜测文件的类型和编码?
问题描述
我正在寻找一种快速的方法来猜测 Go 中文件的 mime 类型和编码,给定它的名称。在 Python 中,您可以执行以下简单操作:
import mimetypes
type, encoding = mimetypes.guess_type(file_name)
go有类似的东西吗?我看到了 mimetypes 包,但我认为它不能从文件名派生编码。
解决方案
使用mime.TypeByExtension获取给定文件扩展名的 mime 类型:
fmt.Println(mime.TypeByExtension(".jpg")) // prints image/jpeg
如果以完整文件名开头,请使用filepath.Ext获取扩展名并将该扩展名传递给上面的函数:
fmt.Println(mime.TypeByExtension(filepath.Ext("blah.gif"))) // prints image/gif
推荐阅读
- python - PyQt 在 MacOS 中不显示可检查 QAction 的勾号
- swift - 列表视图之外的文本?
- google-places-api - 我的 Google Nearby Search API 为每个条目返回相同的位置
- visual-studio-code - pylance,linting 在 vscode python venv 中不起作用
- python - 如果列内容 b != 0 则打印列内容 a
- spring-boot - Spring Boot 建议端点优化
- audio - 以最少的重新编码静音音量
- github - 如何使用(不同的)GitHub 存储库上的降价文件作为静态 Next JS 站点的源?
- swift - NSKeyedUnarchiver 创建由其他人引用的同一对象的多个实例
- python - 如何找到标签的兄弟元素