鱼C论坛

 找回密码
 立即注册
查看: 2598|回复: 6

怎么把资源文件打成一个大包,在程序里调用呢?

[复制链接]
发表于 2022-8-23 16:51:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
比如程序里要用到一些 wav,mp3。 用啥办法能把他们打成资源包,在程序里调用。 而不是散在一个目录下,以原始文件出现?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-8-23 16:53:19 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-8-23 17:23:17 | 显示全部楼层
ba21 发表于 2022-8-23 16:53
参考:
http://1118pc.com/show_pdetails.asp?id=1010

谢谢,这是我看到的最好的pyinstaller的说明书。

不过,它好像把所有的mp3先打包,执行时再把原始文件释放到一个目录下?

但是以前用到的很多工具程序好像并不把mp3等资源文件释放为多个原始单个文件后再调用,它们是怎么处理这种问题的呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-23 17:54:20 | 显示全部楼层
打包 分  -F 和 -D   用 -D 就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-23 17:55:09 | 显示全部楼层
我找到了一个tar的版本
$ tar -tf data.tar
data/
data/pic/
data/pic/1.png
data/src/
data/src/main.cpp
data/main.html
$ cat main.py
#!/usr/bin/env python
#coding=utf-8

from subprocess import Popen, PIPE
from PIL import Image
from io import BytesIO

def get(filename):
    popen = Popen(["tar", "-xOf", "data.tar", "data/" + filename], stdout = PIPE)
    return BytesIO(popen.communicate()[0])

pic = Image.open(get("pic/1.png"))
pic.show()
print(get("src/main.cpp").read().decode())
print(get("main.html").read().decode())
$ ./main.py
#include <iostream>

template<typename T>
class A {
};

int main() {

    return 0;
}

<!DOCTYPE html>
<html lang="zn-ch">
    <head>
        <title>index</title>
    </head>
    <body>
        <div id="demo">1</div>
        <script>
            var demo=document.getElementById("demo")
            var i=1
            function f(){
                if(i<30)
                {
                    i = i + 1
                    if(i % 3 == 1)
                    {
                        window.alert("继续")
                    }
                    demo.innerHTML = i
                }
            }
            var time=setInterval(f,3000)
        </script>

    </body>
</html>

$
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-23 19:53:35 | 显示全部楼层
blackantt 发表于 2022-8-23 17:23
谢谢,这是我看到的最好的pyinstaller的说明书。

不过,它好像把所有的mp3先打包,执行时再把原始文 ...

不释放,如何调用?如何使用?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-8-23 19:58:11 | 显示全部楼层
ba21 发表于 2022-8-23 19:53
不释放,如何调用?如何使用?

有很多语言词典类工具,真人发音文件很大。应该没有启动时个别释放,关闭时删除临时文件的做法。 要不然会很慢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-28 14:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表