Are you using std::string
like Kerrek SB? It becomes as simple as the following:
int main()
{
std::ostringstream ss;
std::string testString("a\0b\0c\0d", 7);
ss.write(&testString[0], testString.size());
std::cout << ss.str(); // abcd
}