Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在c语言中,有没有办法从包含其他信息的文本文件中读取全名?_C - Fatal编程技术网

在c语言中,有没有办法从包含其他信息的文本文件中读取全名?

在c语言中,有没有办法从包含其他信息的文本文件中读取全名?,c,C,实际上,我正试图用C文件管理解决一个问题,我必须读取一个文本文件,其中给出了多个学生的一些数据。问题在于他们的名字。我想我可以用名字和姓氏来解决这个问题,但后来我发现有些名字是两个以上的单词。那么他们有办法解决全名问题吗 文本文件为txt格式 1. 1330273 Sajjad Kashem 1 0 1 0 0 1 1 1 0 2. 1520297 A. S. M. Irfan 0 0 0 1 1 0 1 1 1 如果名称后的下一个字符是0或1,可以尝试以下方法: sscanf(行“%d.%d

实际上,我正试图用C文件管理解决一个问题,我必须读取一个文本文件,其中给出了多个学生的一些数据。问题在于他们的名字。我想我可以用名字和姓氏来解决这个问题,但后来我发现有些名字是两个以上的单词。那么他们有办法解决全名问题吗

文本文件为txt格式

1. 1330273 Sajjad Kashem 1 0 1 0 0 1 1 1 0
2. 1520297 A. S. M. Irfan 0 0 0 1 1 0 1 1 1

如果名称后的下一个字符是0或1,可以尝试以下方法:

sscanf(行“%d.%d%[^01]%d%d%d%d%d%d%d”、&a、&b、名称、&c、&d、&e、&f…”;

不要忘记去掉
名称
:最后一个字符可以是空格。

如果名称后面的下一个字符是0或1,您可以尝试以下方法:

sscanf(行“%d.%d%[^01]%d%d%d%d%d%d%d”、&a、&b、名称、&c、&d、&e、&f…”;

别忘了去掉
名称
:最后一个字符可以是空格。

你可以发布你已经尝试过的内容吗?从你问题中的示例数据来看,文本文件中的每一行似乎都有相同的结构,也就是说,数字后跟一个点,后跟一个空格,数字后跟一个空格,全名后跟一个空格,最后是一系列九位二进制数字,其中每个数字由一个空格分隔。使用函数
fscanf()
似乎很简单,您可以发布您已经尝试过的内容吗?从您问题中的示例数据来看,文本文件中的每一行似乎都具有相同的结构,也就是说,数字后跟一个点,后跟一个空格,数字后跟一个空格,全名后跟一个空格,最后是一系列九位二进制数字,其中每个数字由一个空格分隔。使用函数
fscanf()
似乎很简单,但它停止循环,只显示一个学生的数据,我指的是相同的数据。比如
1。1330273 Sajjad Kashem 10101。1330273 Sajjad Kashem 1 0 1 0 0 1 1 0
是的,这是个问题。您可以像描述的那样逐行读取文件,然后使用
sscanf
而不是带有类似签名的
fscanf
。但它会停止循环,只显示一个学生的数据,我指的是相同的数据。比如
1。1330273 Sajjad Kashem 10101。1330273 Sajjad Kashem 1 0 1 0 0 1 1 0
是的,这是个问题。您可以像描述的那样逐行读取文件,然后使用
sscanf
而不是具有类似签名的
fscanf