如何使用C中的整数和字符串从文件中读取整数

时间:2019-10-13 12:09:20

标签: c file-handling

我正在读取一个.txt文件,其中包含随机形式的数据,即其中包含整数和字符串。

示例.txt文件:

this is a 22 string 33 sorry222 stack33ing
still yysi288 2nd line

我想读取文件并区分所有有效的字符串,即不包含用它们表示的整数。并将这些字符串存储在数组中。

有人领导如何区分吗?

1 个答案:

答案 0 :(得分:0)

首先:我无法为您编写程序。这是您的任务,除此之外,我什至无法更改代码上的内容,或者至少建议更改,因为您没有提供任何代码。对于这种情况,我只能给您一个尘土飞扬的领先算法:

您可能看到的所有单词在文件中都不是有效的字符串。它只是一个字符串,在每个字符序列之间都包含空格字符,这些字符在您看来是一个单词或分开的字符串,但事实并非如此。

您必须首先从文件中获取整个字符串,然后将其存储到char数组中,并使用source将其命名为fgets()

#include <stdio.h>

FILE *input;
char source[200];

input = fopen("text.txt","r");

fgets(source, 200, input);

此后,您需要通过将源字符串的每个字符一个接一个地传输到其他char数组,并尽快将这些字符写入字符串中,从而使这些“单词”分隔字符串源字符串中最后一个单词后的字符或NUL字节。不要忘记制作一个Nul-Byte(\ n)来终止每个字符串。

此后,检查每个现在有效且分开的字符串(如果它是包含数字的字符串还是不包含任何数字的字符串)。