首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于NSInputstream

关于NSInputstream
EN

Stack Overflow用户
提问于 2011-05-25 13:57:15
回答 2查看 591关注 0票数 0
代码语言:javascript
复制
-(NSString*)dateFilePath{

NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsDirectory=[paths objectAtIndex:0];

return [documentsDirectory stringByAppendingPathComponent:kFileName];
}


- (void)viewDidLoad
{

int actuallyRead=0;

NSString *path=[self dateFilePath];

NSURL *audiourl=[[NSURL alloc]initFileURLWithPath:path];

NSLog(@"%@",audiourl);

inStream=[[NSInputStream alloc]initWithURL:audiourl];

actuallyRead=[inStream read:buffer maxLength:sizeof(buffer)];

NSLog(@"%d",actuallyRead);

[dataBuffer1 appendBytes:buffer length:actuallyRead];

NSLog(@"%d",actuallyRead);

[inStream release];

[super viewDidLoad];

}
IN .h file
NSInputStream  *inStream;
NSMutableData  *dateBuffer1;
unint8_t       buffer[1024];

在Documents中的一个文件中,我想使用此方法加载到缓冲区中,但actuallyRead总是-1,我的方法中有错误吗?

EN

回答 2

Stack Overflow用户

发布于 2012-08-22 20:27:41

您总是得到-1的原因是您忘记打开流,所以您所要做的就是在初始化NSInputStream之后尝试读取它之前插入行[inStream open];

票数 2
EN

Stack Overflow用户

发布于 2011-06-22 18:41:42

您应该通过以下方式检查inStream是否可用

代码语言:javascript
复制
if (nil == inStream)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6120120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档