我想讀取文本文件並將其存儲到數組中data[512]
。fgets未將陣列完全填充
下面是代碼:
char filename = "send.txt";
//Open File
FILE *in_file = fopen("send.txt", "r");
if(in_file == NULL){
printf("Error : couldn't oepn file");
}
char data[512];
while(fgets(data, sizeof(data), in_file) != NULL){
printf("read size: %d \n", strlen(data));
...
}
爲什麼strlen(data)
每次返回不同的值?爲什麼data
未完全填充?
編輯
當使用fread()
while循環中:
printf("Start Reading \n");
memset(&data[0], 0, sizeof(data));
size_t numRead = fread(data,1,sizeof(data),in_file);
printf("numRead: %d \n", numRead);
if(numRead == NULL)
{
printf(" fread() failed\n");
return 1;
}
printf("data size: %d \n", strlen(data));
的數據大小(最後一行)是不正確的!
樣品TEXTFILE(它是確定所有除了第一個,其中strlen
返回513,而不是512):
ËLorem存有EST simplement杜人造texte僱工丹斯LA組合物等拉瀨烯頁前衛的印象。 Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis lesannées1500,quand un peintre anonyme assembles ensemble des des morceaux de texte pourréaliserun livrespécimende polices de texte。如果你沒有證據證明你的生活有任何危險,你可以通過改變你的信息,無條件地改變你的生活。 Il aétépopularisédans lesannées1960grâceàla vente de feuilles Letraset contenant des passage du Lorem Ipsum,et,plusrécemment,par son dans des applications de mise en page de texte,comme Aldus PageMaker.e Lorem Ipsum est simplement du人爲的印象將會給人以深刻的印象。 Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis lesannées1500,quand un peintre anonyme assembles ensemble des des morceaux de texte pourréaliserun livrespécimende polices de texte。如果你沒有證據證明你的生活有任何危險,你可以通過改變你的信息,無條件地改變你的生活。 Il aétépopularisédans lesannées1960grâceàla vente de feuilles Letraset contenant des passage du Lorem Ipsum,et,plusrécemment,par son dans des applications de mise en page de texte,comme Aldus PageMaker.e Lorem Ipsum est simplement du人爲的印象將會給人以深刻的印象。 Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis lesannées1500,quand un peintre anonyme assembles ensemble des des morceaux de texte pourréaliserun livrespécimende polices de texte。如果你沒有證據證明你的生活有任何危險,你可以通過改變你的信息,無條件地改變你的生活。 Il aétépopularisédans lesannées1960grâceàla vente de feuilles Letraset contenant des passage du Lorem Ipsum,et,plusrécemment,par son dans des applications de mise en page de texte,comme Aldus PageMaker.e Lorem Ipsum est simplement du人爲的印象將會給人以深刻的印象。 Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis lesannées1500,quand un peintre anonyme assembles ensemble des des morceaux de texte pourréaliserun livrespécimende polices de texte。如果你沒有證據證明你的生活有任何危險,你可以通過改變你的信息,無條件地改變你的生活。 Il aétépopularisédans lesannées1960grâceàla vente de feuilles Letoraset con desant des passage du Lorem Ipsum等人,加上包括德文技術在內的應用程序,請瀏覽Aldus PageMaker。 Le Lorem Ipsum est simplement du texte employte dans la composition et la mise en page avant impression。 Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis lesannées1500,quand un peintre anonyme assembles ensemble des des morceaux de texte pourréaliserun livrespécimende polices de texte。如果你沒有證據證明你的生活有任何危險,你可以通過改變你的信息,無條件地改變你的生活。它推廣20世紀60年代與含Lorem存有通道,以及Letraset張釋放最近,通過將其列入文本佈局應用程序,如奧爾德斯PageMaker.e Lorem存有簡直是打印前虛擬文本成分和佈局。 Lorem存有標準的虛擬文本自1500年有史以來,當一個未知的聚集件
一起
使用龜etc(),它是沒有效率的,目的是你相信它會被填滿。 – user2090491 2014-10-30 12:33:48
顯示文件內容.. – 2014-10-30 12:38:50
它是可行的,在此附上文件? – 2014-10-30 12:56:47