我有一个文件,我写,然后改变它的大小,以文字写入它像大小:文件大小c是比大小的数据串的大小不同
FILE * file...
我得到来自文件的所有数据并将文件的大小更改为数据大小,但不同。字符串的大小比文件长度小,并且会将其切断并丢失数据。 可能是什么问题?
while(fgets(cLine, sizeof(cLine), file))
str.append((string)cLine);
fputs(str.c_str(),file);
_chsize(fileno(file), (int)str.size());
当我检查它总是fileLength(fileno(file))
比str.size()
大!
这看起来不像C.你想要C还是C++? – 2009-05-26 05:26:07
我正在使用从c文件但我需要c + +(我知道fstream,但为mu目的我需要c – sofr 2009-05-26 05:37:46
你改变文件大小的方式是不正确的,你依靠不正确的假设文件大小应该是相同的作为字符串中包含的字符数 – Andrey 2009-05-26 06:17:23