1. Description

在桌面上创建一个txt文件,输入一些文本内容,我们的任务是把文本内容打印出来。

在编程之前,关于一些函数的定义我们需要了解下。

fopen

fopen的函数原型为: FILE *fopen(const char *filename, const char *mode);其功能是使用给定的模式 mode 打开 filename 所指向的文件。文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回 NULL,并把错误代码存在 error 中。该函数位于C 标准库<stdio.h>中。 [1]

fseek

int fseek(FILE stream, long offset, int fromwhere);函数设置文件指针stream的位置。
如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0。如果执行失败(比如offset取值大于等于2
102410241024,即long的正数范围2G),则不改变stream指向的位置,函数返回一个非0值。
fseek函数和lseek函数类似,但lseek返回的是一个off_t数值,而fseek返回的是一个整型。

ftell

函数 ftell 用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁的前后移动,程序不容易确定文件的当前位置。
该函数对大于231-1文件,即:2.1G以上的文件操作时可能出错。

rewind

C 程序中的库函数,功能是将文件内部的指针重新指向一个流的开头。

fclose

fclose是一个函数名,功能是关闭一个流。注意:使用fclose()函数就可以把缓冲区内最后剩余的数据输出到内核缓冲区,并释放文件指针和有关的缓冲区。
函数原型:int fclose( FILE *fp );
返回值:如果流成功关闭,fclose 返回 0,否则返回EOF(-1)。(如果流为NULL,而且程序可以继续执行,fclose设定error number给EINVAL,并返回EOF。)

2. Code&Debug

使用的IDE是Viusal Studio 2019,创建一个空项目的控制台,然后创建一个头文件main.h。

//main.h
#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

再创建一个源文件main.c开始编程。

//mian.c
#include"main.h"int main(void)
{//打开文件FILE *pfile = fopen("C:/Users/0xFingerprint/Desktop/me.txt", "rb");if (pfile == NULL) {printf("open file failed!\n");exit(0);}//读取文件长度,读完后把文件指针复位到开头fseek(pfile,0, SEEK_END);int file_length = ftell(pfile);rewind(pfile);//申请一段内存空间用来放文件中的文本内容,并置零int text_length = file_length * sizeof(char) + 1;char* text_buffer = (char*)malloc(text_length);memset(text_buffer, 0, text_length);//把文件文本内容读到申请的内存空间中int read_length = fread(text_buffer, 1, file_length, pfile);if (read_length != file_length) {printf("read file failed!\n");exit(0);}//打印文件文本内容,释放申请的内存空间,关闭文件流printf(text_buffer);free(text_buffer);fclose(pfile);
}

然后点击生成会出现报错'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

我们打开项目属性,然后找到预处理器定义编辑添加_CRT_SECURE_NO_WARNINGS即可。

3. Show

200826-C语言打印文件中的文本内容相关推荐

  1. itextsharp 获取文本_利用iTextSharp提取PDF文件中的文本内容

    最近测试中需要对比两个PDF文件的内容,当然只是文字没有图表的,但是没有现成的工具可用.于是我的想法是先把PDF转换为Text,然后再对比Text的内容.现在问题的关键变成了如何提取PDF中的文本,在 ...

  2. 记录 || Python | 提取xml/tmx文件中的文本内容

    # -*- coding:utf-8 -*- import codecs import xml.etree.ElementTree as ET import sysdefaultencoding = ...

  3. Python使用pdfminer3k提取PDF文件中的文本

    推荐教材: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,2021年12月第11次印刷,山东省一流 ...

  4. java pdfbox 提取pdf 标题_java – 使用pdfbox从PDF文件中提取文本

    我试图使用pdfbox从PDF文件中提取文本,但不是作为命令行工具,而是在我的 Java应用程序中.我正在使用jsoup下载pdf. res = Jsoup .connect(host+action) ...

  5. c语言读取一行的前几个字符串,c语言读取文件某一列 c语言 读取文件中某一行的前一行...

    各种格式的文件用什么软件打开.$$$TemporaryFile)Q7?5g4U5m&_.@.m;K"S.$$AOS/2club.looaoo.net-s;X'a)B.N,w7\;{9 ...

  6. wxWidgets:从文件中读取文本

    wxWidgets:从文件中读取文本 wxWidgets:从文件中读取文本 一个小代码片段,展示了如何从文件中读取文本 另一种方式,使用流媒体(对于更大的文件): 一个如何编写文本文件的小例子 wxW ...

  7. 如何使用Windows搜索在任何文件中搜索文本

    Many of us rely on Windows Search to find files and launch programs, but searching for text within f ...

  8. java 取pdf 文本域_java – 使用iText从pdf文件中提取文本列

    我需要使用iText从pdf文件中提取文本. 问题是:一些pdf文件包含2列,当我提取文本时,我得到一个文本文件,其中列被合并为结果(即同一行中两列的文本) 这是代码: public class pd ...

  9. python怎么建立替换_Python-如何搜索和替换文件中的文本?

    如何使用Python 3搜索和替换文件中的文本? 这是我的代码: import os import sys import fileinput print ("Text to search f ...

最新文章

  1. java程序的装载与检查_浅谈Java类型装载、连接与初始化
  2. 32个程序员萌翻全场的瞬间!
  3. 数据结构实验之链表五:单链表的拆分
  4. sed是linux命令吗,Linux命令 sed
  5. 【原/转】UITableview性能优化总结
  6. 农业知识图谱(KG):农业领域的信息检索,命名实体识别,关系抽取,分类树构建,数据挖掘...
  7. fatal error: cuda_runtime.h: No such file or directory
  8. (转)SQL Server 监控统计阻塞脚本信息
  9. android ndk r10d.rar,[Android] 环境配置之Android Studio开发NDK
  10. C语言从入门到放弃2022年8月3号
  11. AD15画板的总流程
  12. 5种方法,加密你的Python代码 !
  13. MySQL基础(补充)
  14. Spring Boot项目 Spring Configuration Check Unmapped Spring configuration files found
  15. ios 反编译 破解
  16. 怎么搭建可视化BI数据平台(下)
  17. 摸鱼系列之idea摸鱼插件推荐
  18. 一文了解前端与全栈工程师!
  19. 2020年11月28日天梯赛GPLT总决赛(全部题目 + 189分代码答案)
  20. 125页PPT读懂华为数据之道

热门文章

  1. git reset current branch to here
  2. 江苏大学计算机专业江苏排名,江苏大学算名校吗?江苏大学排名为啥这么高?...
  3. UnityShader——屏幕空间反射(一)
  4. (详细教程)opencv+pycharm+笔记本摄像头 做一个人脸识别
  5. 三段式抽屉BottomSheetBehavior嵌套RecyclerView滑动冲突问题
  6. vs发布exe文件给别人打开闪退问题
  7. Excel - 单元格的引用 (如:A1、$A$1)
  8. 建立自己的iOS开发体系
  9. 嵌入式GUI及其开发工具——miniGUI和mStudio
  10. 使用Iframe嵌套其他系统页面遇到的跨域问题