你好, 欢迎回来｡
在这堂课中, 我想提供
这是我们第一个阅读文件的挑战｡
我们要数一下 文件中的行｡
让我们来看一下代码块, 让我们创建项目｡
在这里,
我们只想说 一个新的项目, 这将是一个基本的阅读对齐｡
所以说控制台应用程序选择 我们将把这个基本的或计数的行数命名为
关于计算行数｡
这将创造出 我们的主要｡ c, 这是好｡
在我们开始这个应用程序之前 但是, 我们希望实际创建包含一些文本文件｡
既然我们不写作了, 我们就 阅读行数｡
所以你必须知道 您保存了项目｡
我正在将项目保存在内部 我的下载目录｡
当您创建新项目时 在您的下载目录中, 您转到该项目名称｡
我的项目名称是 计算行数｡
所以里面有多少 行, 我有我的主｡ c文件中｡
我可以创建我的文件 就在这个目录里｡
所以我现在要向右 在目录中单击,
我将输入new, 然后 将创建一个文本文件｡
这是一个新的文本文档, 这将是一个测试 文本中｡
我要把它打开｡
您可以在任何 编辑, 这是写字板
它会把 你好｡
这将测试 会计, 好吧, 一, 只是一堆线,
然后你 我想保存并关闭它｡
现在我已经创建了文件, 我可以 开始实施一些东西｡
我首先要做的是 我想为文件名创建一个常量变量｡
所以我只需要使用define｡
这将代表我的文件名｡
我只需要说出文件名 这就等于我刚才给它取的名字
再次测试｡ 文本, 所以测试｡ 文本中｡
我所有的代码 是我的主要职责｡
我想创建文件指针｡
请记住, 要创建文件指针, 您只需使用全部大写FILE, 然后输入星星,
然后输入fp即可｡
我打算 将初始化为null｡
每当您读取文件时 和编写, 您必须确保包含标准库｡
h.工作人员
我还将创建一个 要使用字符
我只想说char, 然后为所有行创建一个计数器｡
我要说的是int行计数｡
我把它初始化为0｡
你要做的第一件事 你阅读文件的时候,
你必须打开它｡
所以f开函数是 将返回一个文件指针｡
所以我想把它分配给我的
我想说的是f open和文件名 我已经定义的名称是一个常量, 文件名｡
我想敞开心扉去阅读 阅读, 所以我说r
所以我想用我的 file name作为常量, 然后用双引号括起r,
这就是我们模式｡
我只想只读｡
我不想写｡
如果我做了r+, 我 也会写｡
在使用指针之前, 指针表示文件｡
我想确保 指针不等于null, 所以我想用f.
我想说的是fp等于null｡
如果它等于null 希望在返回时显示一个错误｡
所以我想做一些 printf文件不存在, 请执行任何操作
到时候就这样了｡
我们只想回到 从函数中返回负1｡
打开文件后,
现在我们 可以开始阅读字符, 所以我们可以写一个while循环 我们想说的是当我们的字符等于fgetc时｡
Fgetc正在阅读单个字符｡
我们传入文件指针, 然后
我们想要基本上说我们想要读取字符直到我们看到eof｡
所以我们说, 直到它不等于｡
然后我们要跳出 我们的循环, 类似这样的东西｡
所以我们要读入字符 直到文件结束｡
只要我们的性格不 换行字符, 我们只想在看到换行字符时递增｡
所以我们要说如果我们的角色 等于换行符, 那么我们需要增加计数器.
我们只想说行计数加 另外, 这会影响我们的台词｡
然后我们跳出这个循环 当我们到达文件的结尾时｡
但我们只推荐我们的 如果我们有换行的话｡
你最不想做的事 在你阅读完你写的东西之后, 你想关闭你的文件｡
所以你要说f关闭 然后传入文件指针｡
然后我们还要设置 我们的文件指针等于null｡
然后我们可以打印出 我们运行的行数｡
所以我们可以直接说printf总数 然后我们就可以输入行数了｡
然后就从 就像这样｡
再次回顾这段代码, 我们
创建我们的文件指针, 将其设置为null, 创建一个字符和一个局部变量 用于计算行数的变量｡
我们打开第12行的文件｡
我们以只读模式打开它｡
我们确保它不为空, 并且 然后我们执行while循环读入每个字符,
直到 我们就在文件的末尾｡
每次看到换行符时, 我们递增计数器｡
然后我们关闭文件 并将指针设置为null｡
然后我们打印出 行的数目｡
让我们继续建造它｡
而且我们还有一条额外的线路 喂, 我们想确认一下
所以我想确保 在我们的printf中忘记逗号｡
现在我们运行这个程序 读取我们创建文件并告诉我们有多少行｡
所以它说总人数 行的长度为六｡
如果我们打开文本文件, 我们应该 注意有六条线, 一, 二, 三, 四,
五, 六｡
实际上有七个｡
所以我们必须增加 最后一个直到我们得到eof｡
这里有个小问题 因为这是最后一行
在我们到达文件末尾之前｡
所以你会想要 这是一个多, 然后我们将运行它, 它实际上会工作｡
在这种情况下, 我们将 添加几行｡
在这种情况下, 我们应该 一, 二, 三, 四, 五, 六,
七, 八, 九行.
我们关闭文件｡
我们再运行一遍编译 它, 我们应该得到九个｡
在这种情况下, 我们得到9｡
所以我会保存这个源代码｡
你可以下载它｡
这是阅读的基础知识 使用fgtc从文件中读取数据｡
你也想成为 熟悉fgets｡
然后格式化输出, 您可以使用 fscanf以读入格式化的输出｡
我希望这对你有帮助｡ -谢谢—谢谢