将整个文本文件读入一维数组

时间:2012-02-05 02:44:42

标签: c file-io io

我想读取一个包含最小长度为0和最大长度为1024的字符串的文本文件。然后,我想将它放入一个数组中来处理该字符串的字符。最有效的方法是什么?

3 个答案:

答案 0 :(得分:2)

由于您知道最大长度,因此可以声明适当大小的数组并使用fread来读取字符串。

FILE* theFilePointer = ...;
char text[1024];
fread(text, sizeof(char), 1024, theFilePointer);

答案 1 :(得分:2)

char buf[1025];
size_t len = fread(buf, 1, sizeof buf - 1, f);
buf[len] = 0;

答案 2 :(得分:0)

char buf[1025];
int i=read(fd,buf,1024);
if (i>=0) buf[i]=0;