我在PUTTY工作,使用C.我有一个.txt文件,其中包含多个用户的数据。例如,一行看起来像:" SSNumber,Name,PhoneNumber,Class,Age(...)"。每个用户只有一行。我想用malloc在共享内存位置写它。但是我以后必须改变其中一个字段。我怎样才能做到这一点?无论如何,我是否需要逐行阅读?这让人非常困惑。 谢谢! 这够了吗?
if (fp != NULL) {
/* Vai ao fim do ficheiro. */
if (fseek(fp, 0L, SEEK_END) == 0) {
long bufsize = ftell(fp);
if (bufsize == -1) { /* Error */ }
source = malloc(sizeof(char) * (bufsize + 1));
if (fseek(fp, 0L, SEEK_SET) == 0) { /* Error */ }
size_t newLen = fread(source, sizeof(char), bufsize, fp);
if (newLen == 0) {
fputs("Error reading file", stderr);
} else {
source[++newLen] = '\0'; /* Just to be safe. */
}
}
fclose(fp);
}