首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSTask,NSPipe -无法连接返回的字符串

NSTask,NSPipe -无法连接返回的字符串
EN

Stack Overflow用户
提问于 2012-07-30 14:36:34
回答 1查看 203关注 0票数 0

在我的Mac应用程序中,我让NSTask调用一个Python,然后通过NSPipe返回“连接”。然后,我在Obj类中读取数据,并将其放入字符串中:

代码语言:javascript
复制
NSMutableData *data = [[NSMutableData alloc] init];
NSData *readData;

while ((readData = [readHandle availableData])
       && [readData length]) {
    [data appendData: readData];
}

NSString *aString;
aString = [[NSString alloc]
                  initWithData: data
                  encoding: NSASCIIStringEncoding];

NSLog(@"append%@me",aString);

稍后,当我尝试将输出连接到另一个字符串时,我无法-它打印在另一行上:

代码语言:javascript
复制
appendconnected
me

而且,我也不能用以下方法测试字符串:

代码语言:javascript
复制
if ([string isEqualToString:@"connected"]) {
    NSLog(@"yes");
} else {
    NSLog(@"no");
}

这表明,他们是不平等的,尽管他们!

为什么会这样呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-30 15:41:54

溪流里有一条新的路线。

如何在python端打印数据?

如果您使用的是print "connected",它也会输出一个换行符。

请注意,不输出换行符可能会导致在管道关闭(或更多的数据被写入)之前不会读取数据,因为系统可能会缓冲一些数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11723707

复制
相关文章

相似问题

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