我一直在尝试同时读取和写入文件,并且尝试将 text.txt 内容中的所有选项卡替换为空格。这是我的代码:
int main()
{
FILE* filePtr = fopen("text.txt", "w+");
char c;
c = fgetc(filePtr);
fpos_t num;
while(c != EOF)
{
if(c == '\t')
{
fgetpos(filePtr, &num);
num--;
fsetpos(filePtr, &num);
fputc(' ', filePtr);
}
c = fgetc(filePtr);
}
}
text.txt 的内容是这样的:
嗨 \t 我的 \t 名字 \t 是 \t 杰克!
当我运行这段代码时,我在 text.txt 文件中的输出只是空白。那里没有字符。我应该怎么做才能使替换按预期进行?