簡體   English   中英

如何在c ++中刪除使用ExtAudioFileCreateWithURL創建的文件?

[英]How to delete files created with ExtAudioFileCreateWithURL in c++?

我正在iOS上進行低級音頻處理。 因此,我的應用程序的一部分是用c ++編寫的。

我在那里創建和寫入音頻文件。 使用ExtAudioFileCreateWithURL創建文件,並使用ExtAudioFileWriteAsync寫入文件 使用ExtAudioFileDispose關閉文件。

有時需要刪除文件。

如何在c ++中刪除使用ExtAudioFileCreateWithURL創建的文件?

由於該文件與CFURLRef打開功能CFURLDestroyResource似乎是這樣做的方法,但這種功能已被棄用,這是我不清楚是什么將取代此功能。

我最終設法通過在Objective-C文件中編寫一個輔助函數並從C ++代碼調用該函數來解決這個問題。

bool removeItemAtURL(CFURLRef url) {
    NSFileManager *fileManager = [NSFileManager defaultManager];
    return [fileManager removeItemAtURL: (__bridge NSURL *)url error: NULL];
}

雖然這有效,但我不確定在時間關鍵的音頻渲染線程中使用NSFilemanger對象是否保存。 如果是這樣,那么最好讓文件的刪除在不同的線程中處理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM