Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将字节数组转换为.wav文件_Ios_C_Audio - Fatal编程技术网

Ios 将字节数组转换为.wav文件

Ios 将字节数组转换为.wav文件,ios,c,audio,Ios,C,Audio,这是我的代码,但该文件无法播放 请帮助,提前谢谢。文件是否以wav格式在文档目录中创建?如果是,那么在将字节数据转换为NSData@NSDumb是的,文件已创建,但无法播放。我认为将字节转换为NSData时会出现一些问题。您知道吗?请尝试验证服务器端的响应,以确保从服务器获取的字节数组无效。如果不是,那就是你在目标C端所做的转换。您需要让创建该服务的开发人员在服务器端为您验证响应。@NSDumb我不能这样做,因为它是第三方API,我确信数据是正确的,因为Android实现没有问题。 NSUInt

这是我的代码,但该文件无法播放
请帮助,提前谢谢。

文件是否以wav格式在文档目录中创建?如果是,那么在将字节数据转换为NSData@NSDumb是的,文件已创建,但无法播放。我认为将字节转换为NSData时会出现一些问题。您知道吗?请尝试验证服务器端的响应,以确保从服务器获取的字节数组无效。如果不是,那就是你在目标C端所做的转换。您需要让创建该服务的开发人员在服务器端为您验证响应。@NSDumb我不能这样做,因为它是第三方API,我确信数据是正确的,因为Android实现没有问题。
NSUInteger len = [response length];
Byte *byteData = (Byte *)malloc(len);
memcpy(byteData, [response bytes], len);

    NSData *soundData = [NSData dataWithBytes:byteData length:len];
    NSString *soundFilePath = [NSString stringWithFormat:@"%@/%@", [self documentDirectory], OWAudioDoorKeyFileName];

    if ([[NSFileManager defaultManager] fileExistsAtPath:soundFilePath]) {
        [[NSFileManager defaultManager] removeItemAtPath:soundFilePath
                                                   error:nil];
    }

    [[NSFileManager defaultManager] createFileAtPath:soundFilePath
                                            contents:soundData
                                          attributes:nil];