我正在尝试编写一个“下载页面网站”,并试图在我的网页上显示文件图标。与 Windows 系统一样,“.exe”文件内部有图标图像。或者linux可执行文件。我可以读吗?我知道 python 可以用一个包名“win32api”来完成,Golang 是否有任何包来实现这个功能?
1 回答
慕无忌1623718
TA贡献1744条经验 获得超4个赞
你可以使用 linux 包来发挥你的优势。
例如,您可以使用icoextract,它可以通过 apt 安装:
apt install icoextract
然后像这样运行它:
icoextract /path/to/file.exe /path/to/file.ico
Go 使调用命令并使用包执行它们成为可能os/exec。所以你可以做类似的事情
func ExtractIcon(executablePath string) []byte {
file, err := ioutil.TempFile("dir", "prefix")
if err != nil {
log.Fatal(err)
}
defer os.Remove(file.Name())
cmd := exec.Command("icoextract", executablePath, file.Name())
if err = cmd.Run(); err != nil {
log.Fatal(err)
}
content, _ := ioutil.ReadFile(file.Name())
return content
}
- 1 回答
- 0 关注
- 137 浏览
添加回答
举报
0/150
提交
取消