火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 593|回复: 4
打印 上一主题 下一主题

[视窗] 分享一个API

[复制链接]

307

主题

1383

帖子

5330

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5330
QQ
跳转到指定楼层
楼主
发表于 2024-1-23 02:00:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 urenai 于 2024-1-23 02:09 编辑

setEndOfFile 函数 (fileapi.h) - Win32 apps | Microsoft Learn

具体干什么的,你猜....

通常情况下,当我们操作大文件,增删内容后,
其中,增加内容的情况下,不需要处理冗余尺寸。
但是,如果删减了部分内容后,想要缩小尺寸,唯一的办法:创建新文件。

但是哥们,面对大文件,很无力的好么,此时,我们就需要这么一个API。
这个API是从物理层面截断文件。
使用方法也简单。
调整读写文件, 执行该API,参数还只有一个,即:文件句柄....

@飞扬工作室  

官方跟进,做好入库工作啊。

  1. BOOL SetEndOfFile(
  2.   [in] HANDLE hFile
  3. );

  4. LARGE_INTEGER newFileSize;
  5. newFileSize.QuadPart = 新的文件长度(字节);
  6. SetFilePointerEx(hFile, newFileSize, NULL, FILE_BEGIN);
  7. SetEndOfFile(hFile);
复制代码
  1. 另外:
  2. BOOL SetFileValidData(
  3.   [in] HANDLE   hFile,
  4.   [in] LONGLONG ValidDataLength
  5. );
复制代码

专业承接18-98岁xx的心理及生理教育辅导。
回复

使用道具 举报

76

主题

835

帖子

4262

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4262
沙发
发表于 2024-1-23 02:40:56 | 只看该作者
下次一定~火山是做减法的..虽然好用.强大..但是大部分用不到..会给人觉得,我擦,火山怎么这么复杂...
但是用得到的.就觉得,辣鸡玩意,啥都没有~
回复

使用道具 举报

439

主题

1万

帖子

3万

积分

超级版主

Rank: 8Rank: 8

积分
36725
板凳
发表于 2024-1-23 08:50:00 | 只看该作者
好,我看看能不能加到文件读写类里面。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

439

主题

1万

帖子

3万

积分

超级版主

Rank: 8Rank: 8

积分
36725
地板
发表于 2024-1-23 09:14:15 | 只看该作者
可以用,封出来了。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

307

主题

1383

帖子

5330

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5330
QQ
5#
 楼主| 发表于 2024-1-23 12:59:19 | 只看该作者
本帖最后由 urenai 于 2024-1-23 13:03 编辑
创世魂 发表于 2024-1-23 09:14
可以用,封出来了。

再多做点好事。
添加个   删除内容(起始位置,结束位置)

实际要做的就是,把  结束位置  到  文件结束位置,这些数据往前移动。
使用for循环来搬迁,避免缓冲区问题  来往前搬移。
专业承接18-98岁xx的心理及生理教育辅导。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-20 16:46 , Processed in 0.086418 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表