- 论坛徽章:
- 0
|
将文本文件中每一行的所有字符读为数组的一个元素??(初学者)
我想将一个test.txt 文件中的每行内容作为一个文件名的前缀,
main()
{
FILE prefix; // 打开test.txt
char filename_prefix[20]; //作为前缀,大于20只承认前19个字符。
char filename_str[254];//从test.txt读出的每行字符。
FILE_NAME file_prefix;//作为前缀。
printf("filename prefix is %d\n",strlen(file_prefix));
prefix=fopen("test.txt", "r");
while((fgets(prefix_str,254,prefix))!= NULL)
{
fputs(prefix_str,stdout);
printf("long is %d ",strlen(prefix_str));
strcpy(filename_prefix,prefix_str);
printf("filename prefix is %d\n",strlen(filename_prefix));
printf("%s : %s\n", "prefix name:",filename_prefix);
strcpy(file_prefix,filename_prefix);
}
}
但是,每次我得到的每行文字后面多个换行符号,也就是filename_prefix不是我想要的aaaaa,
而是aaaaa
,
用strlen()看长度比我要的正好多1。也就是想我上边描述的。您看怎么解决?就是吧后面的换行符去掉,否则的话我将来用不能用这个打开比如aaaaa.surfix的文件而是aaaaa
.surfix的文件
谢谢。 |
|