如何写入NULL字符' \ 0'到文本文件

时间:2013-12-07 11:56:00

标签: c++ file-io

我必须将一些数据写入文本文件,并且在每个输出的末尾我必须附加一个NULL终止字符'\ 0'。目前这是我到目前为止所提出的。它适用于某些输入,但对于某些人来说,它有时会用垃圾值写入整个文本文件。我有更好的方法吗?在我的程序中,我必须编写一些数据,将其位置存储在文件中并将其用于某些操作。下一个写操作从address = address + 500;

开始
long int address = get_address();
void write_to_file()
{
      fstream pFILE ("my file.txt");
      char * buffer = new char [500];
      cin.getline(buffer,500);
      pFILE.seekp(address);
      pFILE << buffer;
      pFILE.seekp(address + strlen(buffer));
      pFILE << '\0';
      address += 500;
}

1 个答案:

答案 0 :(得分:1)

将'\ 0'写入文件:

fstream output_file("output_file.txt", ios::binary);
output_file.put('\0');

ios::binary阻止编译器或操作系统翻译'\ 0'。