我正在尝试将音频文件存储在iPhone应用程序中。
是否可以使用SQLite执行此操作?
请给我建议。
答案 0 :(得分:1)
您可以使用sqlite中的BLOB
编辑:
您可以在数据库模式中定义以下内容:
CREATE TABLE audio (
id BIGINT PRIMARY KEY,
rawaudio BLOB
);
在您的代码中,您只需将音频的原始数据存储到rawaudio
表中的audio
字段中。
答案 1 :(得分:1)
如果要将音频文件存储在SQLite中,您确实可以使用BLOB数据类型。
您也可以将其存储在目录中并直接访问它。
这取决于您希望如何使用音频文件以及它是否经常更改。
答案 2 :(得分:1)
您是否想要使用SQLite,或者这是回答主要问题的一种方式?因为如果不要求“使用SQLite”,这很简单。只需将文件粘贴在XCode的“资源”组中即可。它最终会出现在您的应用程序包中。
答案 3 :(得分:1)
这是可能的,但可能不是最好的主意。而是将该文件作为资源添加到应用程序中,然后将该文件的名称存储在数据库中,而不是文件本身。这样,您可以随时随地更新文件。
答案 4 :(得分:0)
您是在构建应用程序时还是在运行时尝试执行此操作?
如果您想查看这些技术,Cocoa-Touch可以通过SQLite或Core-Data提供持久性支持。
答案 5 :(得分:0)
根据音频文件的大小,BLOB可以正常工作,或者您可以将它们写入磁盘并在某处跟踪它们。
我遇到了类似的问题,我需要下拉远程音频文件并将其存储在设备上。我使用CoreData来保存所有文件存储位置的可搜索索引,然后使用为该核心数据项提供的路径打开文件。
核心数据起初有点难以理解,但是一旦你绕过它就很不错了。我使用mogenerator用于我的所有模型,它将在您的核心数据模型上运行脚本,为您创建所有样板代码。