パイプ(fd_3)から受け取った行を出力ファイルに書き込もうとするこのコードがあります。ライターは、受信した行を印刷します。その後、行はすべて正しく印刷されますが、出力ファイルは毎回空白です。何か案は?
close(fd_3[WRITE_END]); //wont be writing to Munch2
ofstream outFile;
outFile.open("output.txt");
if(!outFile) {
printf("File output.txt could not be opened");
}
while(read(fd_3[READ_END], (void*)line.c_str(), BUFFER_SIZE)) {
printf("writer receives: %s\n", line.c_str());
outFile << line;
}
outFile.close();
close(fd_3[READ_END]); //done reading