当前博客:桌面端读写文件,如何实现指定读写位置?

105 次浏览【转载需注明来源】

博客作者:【上头中】

个性签名:寒窗苦读十年一朝凤舞九天

<火山程序 类型 = "通常" 版本 = 1 />

方法 置文件大小_ <公开 静态 类型 = 逻辑型 注释 = "预创建指定大小的文件" @禁止流程检查 = 真>
参数 文件名称 <类型 = 文本型>
参数 文件大小 <类型 = 长整数>
{
    变量 句柄 <类型 = 变整数>
    句柄 = 打开文件_ (文件名称, 打开方式.新建或覆盖, 共享方式.共享读写, 访问方式.读写)
    移动读写位置_ (句柄, 文件大小, 文件常量.文件尾)  // SetFilePointer GetLastError
    移动位置 (句柄)  // SetEndOfFile
    如果 (取文件尺寸_ (句柄) == 文件大小)
    {
        关闭文件_ (句柄)
        返回 (真)
    }
    关闭文件_ (句柄)
    返回 (假)
}
Markup
 
<火山程序 类型 = "通常" 版本 = 1 />

方法 移动读写位置_ <公开 静态 类型 = 长整数 注释 = "移动该文件的读写位置" 返回值注释 = "成功返回移动距离" @禁止流程检查 = 真>
参数 文件句柄 <类型 = 变整数>
参数 移动距离 <类型 = 长整数>
参数 移动方式 <类型 = 文件常量 注释 = "默认是当前位置" @默认值 = 文件常量.当前位置>
{
    @    LARGE_INTEGER li;
    @    li.QuadPart = @<移动距离>;
    @    li.LowPart = ::SetFilePointer ((HANDLE)@<文件句柄>, li.LowPart, &li.HighPart, (DWORD)@<移动方式>);
    @    if (li.LowPart == INVALID_SET_FILE_POINTER && GetLastError() != NO_ERROR)
    @    {
    @       li.QuadPart = -1;
    @    }
    @    return li.QuadPart;
}
Markup
 

 这几个函数能用快码桌面端的哪些命令来实现呢。

默认排序
Generic placeholder image
Generic placeholder image
已采纳
A迅捷云安全 Time: 2024-03-09 22:10:50
 变量 文件路径 = 文件操作类.取桌面目录() + "\\cs.txt";
            变量 文件内容 = 文件操作类.读入文件(文件路径, "utf8"); // 替换为你的文件路径
            // 这是你要插入的新内容
            常量 插入内容 = "这是新插入的内容";
            // 从第十个字符后插入新内容
            常量 新内容 = 文件内容.截取(0, 10) + 插入内容 + 文件内容.截取(10);
            // 将新内容写回文件
            文件操作类.写到文件(文件路径, 新内容);
Generic placeholder image
A迅捷云安全 Time: 2024-03-09 20:06:37
const fs = require('fs');  
  
// 打开文件  
const file = fs.createReadStream('yourfile.txt', { start: 10, end: 20 }); // 从第10个字节开始读取,读取到第20个字节(不包括第20个字节)  
  
let data = '';  
  
// 读取文件数据  
file.on('data', (chunk) => {  
    data += chunk;  
});  
  
// 读取完成  
file.on('end', () => {  
    console.log(data); // 输出读取到的数据  
});  
  
// 错误处理  
file.on('error', (err) => {  
    console.error(`Got error: ${err.message}`);  
});
文件操作类.追加文件数据("文件路径","新的数据");
Generic placeholder image
上头中 回复 1楼 A迅捷云安全 Time: 2024-03-09 20:27:55

大佬可以再来一个写的例子吗,将读取的文件写入到其他文件从第10个字节开始写入字节集,感谢

Generic placeholder image
上头中 回复 3楼 A迅捷云安全 Time: 2024-03-09 22:13:02

感谢


桌面端读写文件,如何实现指定读写位置?