社区
工具平台和程序库
帖子详情
C语言关于文件的一点问题:(如何把文件件的末尾删掉?)
Meuck
2003-05-15 12:33:15
在TurboC中把文件件的末尾删掉.
找了我一个晚上还是不行啊.大家帮帮
...全文
185
10
打赏
收藏
C语言关于文件的一点问题:(如何把文件件的末尾删掉?)
在TurboC中把文件件的末尾删掉. 找了我一个晚上还是不行啊.大家帮帮
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hongyanzaiyun
2003-05-18
打赏
举报
回复
哦
我想应该要把最后十个字符一个一个删掉把
然后再保存
可惜我的上边没有.dot(因为我的操作系统没激活,所以过几天要删了)
没法试
但我认为这种方法应该是对的把
etboy327
2003-05-18
打赏
举报
回复
fseek应该是好办法。
用fprintf(fp + offset, "末尾", "");是不是也行?
Meuck
2003-05-18
打赏
举报
回复
stukov2002(>_<) 办法可以,之后我在用filelength函数的时候发现的.在io.h里
另外Jupin(VxWorking) 的程序要另外建一个临时文件,不符合我的要求
Meuck
2003-05-18
打赏
举报
回复
to: hongyanzaiyun(鸿雁在云)
不行啊,以下是我的代码
FILE *fp;int a;
if((fp=fopen(filename,"rb+"))==NULL){printf("Error test1");return;}
//fseek(fp,9,0);
fseek (fp,-10L,SEEK_END);
fputc(0,fp);
//fprintf(fp,"a");
fclose(fp);
只是在中间加了一个ASCII码为0的字符而已
idontlikenickname
2003-05-18
打赏
举报
回复
用chsize(int handle, long size)函数截断文件就行了.用法看帮助.
Jupin
2003-05-18
打赏
举报
回复
/* 经过上机调试 */
/* 环境:Dev C++ 4.9.8.0 + Windows 2000 Pro */
#include <stdio.h>
#include <stdlib.h>
/* 删文件尾部,c参数为要删除的位数 */
void cutfiletail(FILE *fp, FILE *fpn, int c)
{
fpos_t pos, i;
char data;
fseek(fp, 0, 2);
fgetpos(fp, &pos);
pos -= c * sizeof(char);
fsetpos(fp, &pos);
fseek(fp, 0, 0);
fgetpos(fpn, &i);
while (pos--)
{
fread(&data, sizeof(char), 1, fp);
fwrite(&data, sizeof(char), 1, fpn);
fgetpos(fp, &i);
}
}
main(void)
{
FILE *fp, *fpn;
char data;
if ((fp = fopen("change.data", "r+b")) == NULL)
{
printf("The file cannot open!\n");
return;
}
if ((fpn = fopen("temp.data", "w")) == NULL)
{
printf("The file cannot open!\n");
fclose(fp);
return;
}
printf("Now will enter the cutfiletail function!\n");
cutfiletail(fp, fpn, 4);
fclose(fp);
fclose(fpn);
system("copy temp.data change.data");
system("del temp.data");
system("pause");
}
试试看吧。
hongyanzaiyun
2003-05-17
打赏
举报
回复
用fseek 啊?
fseek (fp,-10L,SEEK_END); //fp是文件指针,-10L表示从文件末尾后退10个字节
然后将后边字符置为0,在保存就可以了
shishiXP
2003-05-15
打赏
举报
回复
好像只有这个办法
Meuck
2003-05-15
打赏
举报
回复
我原来想到的也是这个办法啊。^_^
还望大家积极发言.
ghtsao
2003-05-15
打赏
举报
回复
笨笨的办法就是重新复制文件,末尾不要。直接去掉尾部怕是有点难哦。
学生成绩管理系统:
C语言
程序设计期末大作业
前言 学生成绩管理系统:
C语言
程序设计期末大作业。 控制台版本开发过程整理 (文中尽介绍主要函数且都只有函数名,代码直接看
文
件
) 上传时间: 2021-12-29 开发环境 系统: win10 工具: VSCode 前置知识 涉及
C语言
知识 顺序结构 分支结构 循环结构 数组、字符串 函数 结构体、指针 链表
文
件
操作 功能分析 基础设想:先显示主菜单,通过输入数字选择对应的功能,包括有增加学生信息,删除学生信息,修改学生信息,查询学生信息以及退出程序功能。 (本系统中所有的goto只作用在用户输入错误次数过多时跳转到函数
末尾
)
C语言
中常用的几个头
文
件
及库函数
不完全统计,
C语言
标准库中的头
文
件
有15个之多,所以我主要介绍常用的这四个头
文
件
stdio.h,string.h,math.h,stdlib.h,以后用到其他的再做补充。下面上干货: 1.:定义了输入输出函数、类型以及宏,函数几乎占了标准库的1/3。 (1)
文
件
访问。 FILE *fopen(“filename”,“mode”): 以mode模式打开地址为’filename’的
文
件
,并返回
文
件
指针。 访问模式主要是“r”:只读; “w” :只写,并删除已有内容; “a”:追加,在
末尾
追加; “r+”, “w+”:读写; “a+”追加,上述结尾加“b”:二进制
文
件
操作
c语言
实现图书管理系统
通过对图书的收录,创建出动态链表(存在
文
件
中,并能从
文
件
中读取所存储的数据);对图书编号、书名、作者、现存本数、出版社、出版日期、摘要等信息进行管理;使其有按图书编号的查找、排序以及添加、删除等操作功能。文档
末尾
附带可编程源代码。
C语言
中的
文
件
操作: 读写
文
件
的基本方法
在
C语言
中,
文
件
操作是通过标准库中的
文
件
I/O函数来实现的。
文
件
I/O函数包括
文
件
打开函数、
文
件
关闭函数、
文
件
读写函数等。打开
文
件
:使用fopen函数打开
文
件
,并获得
文
件
指针。读写
文
件
:通过读取或写入函数操作
文
件
内容。关闭
文
件
:操作完成后,使用fclose函数关闭
文
件
。
C语言
中的
文
件
操作是一个非常实用的技能,通过它我们可以在程序中读写
文
件
,实现数据的持久化。本文详细介绍了
文
件
的打开、关闭、读取和写入操作,以及常见的
文
件
操作方法和错误处理技巧。通过使用fopenfclosefgetcfgets。
c语言
系统编程二:
文
件
IO操作
文
件
IO操作一 打开
文
件
open1.1 函数介绍1.2 flags
文
件
的操作权限1.3 mode创建
文
件
的权限1.4 实例二 关闭
文
件
close三 向
文
件
里写数据write四 从
文
件
读数据read五 自写函数实现cp的功能 一 打开
文
件
open 1.1 函数介绍 1. 用到的头
文
件
# include <sys/types.h> # include <sys/stat.h> # include <fcntl.h> 2. 功能:打开
文
件
,如果
文
件
不存在可以选择创建 3. 两
工具平台和程序库
24,860
社区成员
27,333
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章