我使用mkfifo /tmp/my.fifo创建了一个文件。现在,我希望将字符写入文件(带有目标C),以便能够通过tail -f /tmp/my.fifo获取它们。由于某种原因,这是行不通的。尾命令只显示一个字符,然后停止输出。
目标C守则:
NSError *error = nil;
[buffer writeToFile:@"/tmp/my.fifo" atomically:YES encoding:NSUTF8StringEncoding error:&error];
if(error){
NSLog(@"Fail: %@",[error localizedDescription]);
}NSLog不输出任何内容。所以从目标C的角度看,没有明显的错误。
发布于 2013-12-02 16:26:27
解决办法比我想象的要简单:
NSFileHandle *fileHandle=[NSFileHandle fileHandleForWritingAtPath:@"/tmp/my.fifo"];
[fileHandle seekToEndOfFile];
[fileHandle writeData:[buffer dataUsingEncoding:NSUTF8StringEncoding]];
[fileHandle closeFile];https://stackoverflow.com/questions/20332227
复制相似问题