各位大大求问
我现在使用 AVAudioRecorder 录制了aac编码格式的音频文件,存放在temp 文件夹,名字为ringtone.aac 现在需要将这个文件 发送到服务器端,但是这里是使用tcp来进行传输,在传输的时候需要打一个包,包头有xxxxxxxxxxData(这里接音频文件),现在我的做法是 将 xxxxxxxxxxData这段转成 char 完后再把ringtone.aac读成byte 打包,但是现在问题是 使用    
Byte *byteData = (Byte*)malloc(len);
    NSLog(@"%d",sizeof(byteData));
    memcpy(byteData, [data bytes], len);
读取到的数据永远都是个指针,并没有具体数据!!! 请问这个问题如何处理 ,其次关于发送可有更好的方法

解决方案 »

  1.   

    看下你的 [data length]是不是大于0,保存出来的文件是不是个空文件?打开文件是不是成功的
      

  2.   

    不是空文件是可以确定的,[data length]!=0
      

  3.   

    楼主可以这样,你知道aac路径,将音频先转换为nsdata,然后再转成char*进行传输。 NSError* error;
     NSData* lzdata= [NSData dataWithContentsOfFile:lzpath options:nil error:&error];
     if (!error) {
           // (char*)[lzdata bytes] 楼主data数据
           // [lzdatalength] 楼主data数据长度
    }
      

  4.   

    我网络传输都是用第三方的框架来做的,AFnetworking,很方面,就像楼上说的,传输文件类型的数据最好是转换成NSData
      

  5.   

    如果用AFnetworking的话直接传nsdata就行了
      

  6.   

     
    为什么我传的时NSData JAVA服务器接收不到呢?我需要跟服务器统一配置什么?
      

  7.   

    为什么我传的时NSData JAVA服务器接收不到呢?我需要跟服务器统一配置什么?
      

  8.   

    参考这里的回答:
    http://zhidao.baidu.com/link?url=Hkq0ScifB2YZHvjJCqaUv8vo1aozaPLbf0mR7pcbcNHpUysYexzHvpC7h2Fmuq9jTwrw4VXfya1S1NcLQg585S9_UE3kA8SrP4r0v4yKj4O
      

  9.   

    请问 aac音频文件的头信息有几个字节?