当前位置: 首页 > news >正文

linux 文件编程

  1. 标准IO

   也称为标准输入输出(Standard Input/Output),是计算机编程中一种常见的IO操作方式,特别是在C语言及其衍生语言中广泛使用。它主要通过标准C库中的函数来实现,提供了丰富的接口用于数据的输入和输出。

文本文件是一种计算机文件,它包含的是人类可读的文本数据,而不是二进制代码或机器语言。

2,文件的概念,作用

    linux中一切都是文件。文件用来存储数据(数据,指令);

3,linux中文件的类型,

    7种,d为目录 ,-为普通文件,l为软链接(符号链接,类似于快捷方式),p管道文件,s套接字文件, ,c为字符设备,b块设备

流:   FILE*
struct FILE
{
}
    数据从文件当中流入和流出所体现出来的字节
    流叫做流

    流的分类:
        二进制流: 2001 \n
            二进制数据的流
        文本流:
            ASCII码数据的流 \n \t 
FILE 结构定义的对象 FILE * 称之为流对象,也叫文件流指针。
流对象 ===》头 《===数据====》尾

stdin  FILE*   scanf ();
stdout         printf();
stderr

4、ll命令为显示当前目录下文件的详细信息

开头第一个字符即为文件的类型

后面可分为三部分rw-   rw-   r--

第一部分为用户权限,即后面的第一个linux,第二个为小组权限,即第二个linux

r为读,w为写,x可执行

可改为二进制,八进制

eg:-w-   --x   r--

       010  001  100

        2       1       4

1为硬链接,多个文件名关联一个文件内容

组名linux后面为文件的大小

再后面为最后一次修改时间

#include <stdio.h>
//  ./a.out 4 5 56 7 8 
int main(int argc, char *argv[])
{if(argc<3){printf("usage:./a.out srcfile dstfile\n");return 1;}FILE *src = fopen(argv[1],"r");FILE * dst= fopen(argv[2],"w");if(NULL == src || NULL == dst ){printf("fopen error\n");return 1;}while(1){int c = fgetc(src);if(EOF== c){break;}fputc(c,dst);}fclose(dst);fclose(src);return 0;
}

fwrite函数返回成功写入文件的数据项个数。这个值可以与count参数进行比较,以检查是否所有数据都被成功写入。返回值小于形参size_t count,表示错误。

相关文章:

linux 文件编程

1. 标准IO 也称为标准输入输出&#xff08;Standard Input/Output&#xff09;&#xff0c;是计算机编程中一种常见的IO操作方式&#xff0c;特别是在C语言及其衍生语言中广泛使用。它主要通过标准C库中的函数来实现&#xff0c;提供了丰富的接口用于数据的输入和输出。 文本文…...

【后端速成 Vue】实现动态表白墙

前言&#xff1a; 通过前面几篇的文章的讲解&#xff0c;已经学习到了很多的 Vue 指令了&#xff0c;那么现在就将学习到的指令利用起来&#xff0c;做一个小的 demo。 最终效果图&#xff1a; 通过效果图可以发现&#xff0c;一共有这几个功能&#xff1a; ● 渲染列表&…...

【日常开发】 java返回ECharts数据结构封装

java返回ECharts数据结构封装 一、前端页面示例图如下&#xff1a; 二、准备测试数据&#xff1a; 三、后端 格式封装代码&#xff1a; 四、最终结果&#xff1a; &#x1f388;边走、边悟&#x1f388;迟早会好 一、前端页面示例图如下&#xff1a; 二、准备测试数据&am…...

Table表格控件实现单选功能

Table表格控件实现单选功能 <el-tableref"tableRef"height"385"style"--el-table-border-color: none"row-key"contractId"highlight-current-rowsingle-selectselect"handleSelect":data"contractInfo">&l…...

AI技术加速落地 港科广联手思谋打开智能缺陷检测新纪元

AI 技术应用落地的元年&#xff0c;工业是主战场&#xff0c;尤其是工业缺陷检测。 在“生产制造-缺陷检测-工艺优化-生产制造”的智能制造闭环链条中&#xff0c;基于AI的智能缺陷检测扮演着“把关者”的角色。但这个把关者长期以来却缺少一个称手的工具——样本量大、精度高…...

Python爬虫开发:BeautifulSoup、Scrapy入门

在现代网络开发中&#xff0c;网络爬虫是一个非常重要的工具。它可以自动化地从网页中提取数据&#xff0c;并且可以用于各种用途&#xff0c;如数据收集、信息聚合和内容监控等。在Python中&#xff0c;有多个库可以用于爬虫开发&#xff0c;其中BeautifulSoup和Scrapy是两个非…...

数据科学、数据分析、人工智能必备知识汇总-----常用数据分析方法-----持续更新

数据科学、数据分析、人工智能必备知识汇总-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/140174015 文章目录 一、对比分析法1. 按时间和地区2. 同比和环比 二、分组分析法三、结构分析法四、交叉分析法五、矩阵分…...

学习vue Router 一 起步,编程式导航,历史记录,路由传参

目录 起步&#xff0c;安装 1. 安装 2. 使用 命名路由 编程式导航 1. 字符串模式 2. 对象模式 3. 命名路由模式 历史记录 replace的使用 横跨历史 路由传参 1. query路由传参 2. 动态路由传参 3. 二者的区别 起步&#xff0c;安装 router 路由 因为vue是单页应用…...

Qt/C++最新地图组件发布/历时半年重构/同时支持各种地图内核/包括百度高德腾讯天地图

一、前言说明 最近花了半年时间&#xff0c;专门重构了整个地图组件&#xff0c;之前写的比较粗糙&#xff0c;有点为了完成功能而做的&#xff0c;没有考虑太多拓展性和易用性。这套地图自检这几年大量的实际项目和用户使用下来&#xff0c;反馈了不少很好的建议和意见&#…...

Laravel + Thinkphp 生成二维码

安装依赖 composer require endroid/qr-code 编写ThinkPhP代码 public function index() {// 创建二维码内容$qrCode new QrCode(Hello World);// 设置二维码的配置$qrCode->setSize(300);$qrCode->setMargin(10);// 获取二维码图像$writer new PngWriter();$result…...

2408C++,C++20的无侵入式反射

原文 C17基于结构绑定的编译期反射 事实上不需要宏的编译期反射在C17中已用得很多了,比如struct_pack的编译期反射就不需要宏,因为C17结构绑定可直接得到一个聚集类的成员的引用. struct person {int id;std::string name;int age; }; int main() {person p{1, "tom&qu…...

抽象工厂模式(Abstract factory pattern)- python实现

抽象工厂模式的通俗示例 想象一下&#xff0c;你正在经营一家家具店&#xff0c;你需要从不同的供应商那里采购不同的家具系列。有的供应商提供的是现代风格家具&#xff0c;包括现代沙发、现代椅子和现代桌子&#xff1b;而有的供应商提供的是古典风格家具&#xff0c;包括古…...

adb Connection reset by peer的解决方法

本文同步发于&#xff1a;https://www.cnblogs.com/yeshen-org/p/18350232 最近在编译一个老项目&#xff0c;项目中依赖了很多第三方库&#xff0c;用gradle编译要20-30分钟&#xff0c;而且内存开销很大。 公司配的15G内存的电脑&#xff0c;一次编译能用到14G。 编译的时候&…...

111111111

1111111111111111111...

搜维尔科技:Varjo XR-4使用UE5 打造最具沉浸感的混合现实环境

Varjo XR-4使用UE5打造最具沉浸感的混合现实环境 搜维尔科技&#xff1a;Varjo XR-4使用UE5 打造最具沉浸感的混合现实环境...

从分散到集中:TSINGSEE青犀EasyCVR视频汇聚网关在视频整体监控解决方案中的整合作用

边缘计算视频汇聚网关是基于开放式、大融合、全兼容、标准化的设计架构理念&#xff0c;依据《安全防范视频监控联网系统信息传输、交换、控制技术要求》&#xff08;GB/T28181-2011&#xff09;标准开发&#xff0c;集流媒体转发、视频编码、视频管理、标准通信协议、网络穿透…...

React学习-jsx语法

jsx语法&#xff0c;浏览器不认识&#xff0c;需要经过babel编译 https://babeljs.io/ 面试题&#xff1a;jsx的作用&#xff1f; 普通回答&#xff1a;可以在js中返回dom&#xff0c;经过babel编译成js认识的代码import { jsx as _jsx, jsxs as _jsxs } from "react/j…...

uniapp多图上传uni.chooseImage上传照片uni.uploadFile

uniapp多图上传uni.chooseImage上传照片uni.uploadFile 代码示例&#xff1a; /**上传照片 多图*/getImage() {uni.chooseImage({count: 9, //默认9sizeType: [original, compressed], //可以指定是原图还是压缩图&#xff0c;默认二者都有sourceType: [album], //从相册选择/…...

鸿蒙(API 12 Beta2版)媒体开发【处理音频焦点事件】

音频打断策略 多音频并发&#xff0c;即多个音频流同时播放。此场景下&#xff0c;如果系统不加管控&#xff0c;会造成多个音频流混音播放&#xff0c;容易让用户感到嘈杂&#xff0c;造成不好的用户体验。为了解决这个问题&#xff0c;系统预设了音频打断策略&#xff0c;对…...

c语言第12天

指针的引入 为函数修改实参提供支持。 为动态内存管理提供支持。 为动态数据结构提供支持。 为内存访问提供另一种途径。 指针概述 内存地址&#xff1a;系统为了内存管理的方便&#xff0c;将内存划分为一个个的内存单元&#xff08;1个内存单元占1个字 节&#xff09;&…...

Qwen3-14B私有部署镜像实战:基于AI Agent的自动化工作流设计

Qwen3-14B私有部署镜像实战&#xff1a;基于AI Agent的自动化工作流设计 1. 为什么需要AI Agent 想象一下&#xff0c;每天早上打开电脑&#xff0c;你的数字助手已经自动整理好当天的会议纪要、生成了数据分析报告、回复了常规邮件&#xff0c;甚至根据你的日程安排调整了工…...

CLIP ViT-H-14图像编码服务实战:构建可解释AI系统中的视觉注意力模块

CLIP ViT-H-14图像编码服务实战&#xff1a;构建可解释AI系统中的视觉注意力模块 1. 项目概述 CLIP ViT-H-14图像编码服务是基于CLIP ViT-H-14(laion2B-s32B-b79K)模型构建的视觉特征提取解决方案。这项服务将先进的视觉-语言预训练模型转化为实用的工程化工具&#xff0c;为…...

OpenClaw对话增强:Kimi-VL-A3B-Thinking多轮图文交互设计模式

OpenClaw对话增强&#xff1a;Kimi-VL-A3B-Thinking多轮图文交互设计模式 1. 为什么需要优化复杂任务的人机交互 上周我尝试用OpenClaw处理一个看似简单的需求&#xff1a;根据一组产品图片和参数表格&#xff0c;生成一份包含优缺点分析的评测报告。本以为这只是"输入-…...

基于TuGraph的医疗知识图谱构建与智能问答实践

1. 医疗知识图谱构建全流程解析 医疗知识图谱作为医疗信息化的重要基础设施&#xff0c;正在深刻改变着医疗数据的组织方式和应用模式。不同于传统的关系型数据库&#xff0c;图数据库能够更直观地展现疾病、症状、药物等实体间的复杂关系。我们以TuGraph图数据库为例&#xff…...

避坑指南:Oracle EBS AR模块数据查询中的10个常见错误与优化技巧

Oracle EBS AR模块数据查询实战&#xff1a;10个高频错误解析与性能优化指南 当你面对Oracle EBS AR模块的海量数据时&#xff0c;是否经常遇到查询结果不符预期、性能低下甚至系统卡死的困境&#xff1f;作为从业15年的EBS技术顾问&#xff0c;我见过太多团队在AR数据查询上踩…...

DBSCAN vs K-means:5个真实数据集对比,教你选对聚类算法

DBSCAN与K-means实战对比&#xff1a;5个真实数据集下的算法选择指南 第一次接触聚类分析时&#xff0c;我被一个简单问题困扰&#xff1a;为什么同样的数据用不同算法会得到截然不同的分组结果&#xff1f;记得当时用K-means处理地理坐标数据&#xff0c;结果把绵延的海岸线硬…...

SEO_如何通过内容SEO获取稳定流量的关键方法

SEO:如何通过内容SEO获取稳定流量的关键方法 在当今数字化时代&#xff0c;如何通过内容SEO获取稳定流量成为了许多企业和网站运营者关注的焦点。内容SEO不仅能够提升网站的自然搜索排名&#xff0c;还能为网站带来长期的、可持续的流量。具体应该如何通过内容SEO获取稳定流量…...

驾校招生断崖式下跌?这3个数据驱动的获客策略,让报名量翻倍

驾校招生断崖式下跌&#xff1f;这3个数据驱动的获客策略&#xff0c;让报名量翻倍最近和几位驾校校长聊天&#xff0c;听到最多的感慨是&#xff1a;“以前学员排队等车&#xff0c;现在教练排队等学员。”这不是个别现象。某地驾培协会数据显示&#xff0c;2023年区域性驾校平…...

Redis 内存淘汰与过期策略

引言Redis 作为内存数据库&#xff0c;内存资源有限&#xff0c;必须妥善处理内存占用问题。本文梳理两种核心机制&#xff1a;淘汰策略决定内存达到上限时如何移除数据&#xff0c;涵盖 noeviction、LRU、LFU 等多种算法及其实现细节&#xff1b;过期策略&#xff08;惰性删除…...

原神帧率解锁终极指南:三步轻松突破60FPS限制

原神帧率解锁终极指南&#xff1a;三步轻松突破60FPS限制 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 还在为《原神》60帧限制感到困扰吗&#xff1f;genshin-fps-unlock是一款专为《…...