문제

I have an NSTask which processes arguments passed from stdin. The arguments are passed via NSFileHandle.

It's working fine, but our command line tool reads input from stdin until it receives the EOF symbol (by pressing Ctrl+C).

I don't think I can add the EOF symbol to an ASCII string, so what would be the options? Any feedback appreciated!

Thanks in advance!

도움이 되었습니까?

해결책

Calling closeFile on the writing end of the pipe signals the EOF condition:

NSPipe *inPipe = [NSPipe new];
[task setStandardInput:inPipe];

[[inPipe fileHandleForWriting] writeData:...];
// ...
[[inPipe fileHandleForWriting] closeFile];
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top