社区
工具平台和程序库
帖子详情
C语言关于文件的一点问题:(如何把文件件的末尾删掉?)
Meuck
2003-05-15 12:33:15
在TurboC中把文件件的末尾删掉.
找了我一个晚上还是不行啊.大家帮帮
...全文
212
10
打赏
收藏
C语言关于文件的一点问题:(如何把文件件的末尾删掉?)
在TurboC中把文件件的末尾删掉. 找了我一个晚上还是不行啊.大家帮帮
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用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语言
删除TXT文本
文
件
最后一行
目录思路分析目的算法流程几个需要注意的点所用的函数二进制模式与文本模式fseek的坑源码结语 思路分析 目的 希望能将给定txt
文
件
的最后一行(无论是空行还是第一行)
删掉
,并直接保存,而不是另存为某个新的txt
文
件
。 例1: 原
文
件
: 1234567 abcdefg 处理后: 1234567 例2: 原
文
件
: Hello World! 处理后: Hello World! 例3: 原
文
件
: This is an example. 处理后 算法流程 大体思路如下: 以只读方式打开原
文
件
。 以只写方式
某双流一大学的
C语言
的
一点
教程
这是三篇教程曾经写在空间里的,但是我不想改格式了,等我有时间再说吧,我直接放进来。 鉴于目前很多人抱怨
C语言
的题难写,本阔耐就给大家讲讲如何处理一道
C语言
的题吧。 首先 我们要先读题,弄懂题目要让你干什么,然后我们可以构思一个伪代码(就是如同高中数学所学的流程框图),知道要怎么写程序(如果不知道怎么写,那这个教程可能没用)。有思路写程序后,我们就可以准备开始。 首先我们要写头
文
件
(不赘述,有些...
C语言
对于
文
件
的基本读写操作
之前已经对
文
件
有了一些基本的了解,比如
文
件
的定义,类型等,最重要的是关于
C语言
中对
文
件
进行操作时的打开和关闭.
C语言
文
件
操作的基本认识(
文
件
是什么,
文
件
的类型,
文
件
指针,
文
件
的打开和关闭) 接下来就来看
C语言
中对于
文
件
的读写操作. 字符输入函数和字符输出函数 fgetc与fputc(每次获取一个字符) 先来看fgetc,fgetc是从
文
件
中获取一个字符 #define _CRT_SECURE_...
【
C语言
】
C语言
零基础纯干货教学(上)
更适合非科班工科专业的期末考试以及新手小白的入门~
走进
C语言
——
文
件
操作也就那么回事儿
文
件
的概念与分类
文
件
名
文
件
路径 +
文
件
主干名 +
文
件
后缀
文
件
指针 缓冲
文
件
系统中,关键的概念是“
文
件
指针”。每个被使用的
文
件
都在内存中开辟一个区,用来存放
文
件
的有关信息(如
文
件
的名字、
文
件
状态及
文
件
当前位置等)。这些信息是保存在一个结构体变量中的。该结构体类型是由系统定义的,取名为FILE。 我们看一下在Dev-C++中该结构体类型是怎样的 在使用FILE时,系统就会自动创建一个这样的结构体变量,当拿这个指针去接收一个
文
件
时,就会根据该
文
件
填充结构体的信...
工具平台和程序库
24,850
社区成员
27,330
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章