Linux系统中qfile调用seek无法更新指定位置文件内容

一、问题描述

     最近在移植qt程序到银河麒麟系统中,发现在Windows下调用seek接口更新二进制文件功能在麒麟系统中总是无法实现更新,调用的QFile接口也并未报错。

原代码实现方式如下:

	if (!m_writeFile->open(QIODevice::WriteOnly | QIODevice::Append)){HLWarn() << "Write Log header err: " << m_writeFile->errorString();emit sigFileOperateErr(WriteLogFile_Type);return;}QByteArray data;QDataStream in(&data, QIODevice::WriteOnly);in << m_fileHeader;m_writeFile->seek(0);if (-1 == m_writeFile->write(data, data.size())){HLWarn() << "Write Log header err: " << m_writeFile->errorString();emit sigFileOperateErr(WriteLogFile_Type);}m_writeFile->flush();m_writeFile->close();

异常二进制文件如下:

 二、解决方案

    通过查阅资料及分析代码,发现与文件的打开方式有关,修改后的代码如下:

	if (!m_writeFile->open(QIODevice::ReadWrite)){HLWarn() << "Write Log header err: " << m_writeFile->errorString();emit sigFileOperateErr(WriteLogFile_Type);return;}

最终文件的更新效果如下:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/22904.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源工具专题-04 Atlassian Crowd部署备份及迁移

开源工具专题-04 Atlassian Crowd部署备份及迁移 注&#xff1a; 本教程由羞涩梦整理同步发布&#xff0c;本人技术分享站点&#xff1a;blog.hukanfa.com转发本文请备注原文链接&#xff0c;本文内容整理日期&#xff1a;2024-05-29csdn 博客名称&#xff1a;五维空间-影子&…

使用libgpiod库中的事件方式监测多个输入事件

Linux下要同时检测多个GPIO输入的方法有很多&#xff0c;这里我使用libgpiod库中的API实现多个GPIO输入检测&#xff0c;可以达到类似STM32利用外部中断实现输入事件检测的效果&#xff0c;示例代码如下所示&#xff1a; /* 示例使用的libgpiod库版本为V1.2.1 */ //示例功能是…

2022.9.26DAY678

课程学习&#xff1a;《数据处理技术》讲了“数据查询”的语法格式&#xff0c;语法格式也算是简单&#xff0c;就是没能跟之前的内容联系起来&#xff0c;之前的内容没有及时回顾。 高等数学&#xff1a;“ 函数的概念”&#xff0c;讲了函数的概念&#xff0c;反函数&#…

四舍五入(基础语法)

题目描述 小梦有一套彪悍的四舍五入逻辑&#xff0c;她的身高比小熊高 厘米&#xff0c;四舍五入为 厘米&#xff0c;再四舍五入为 厘米&#xff0c;再四舍五入为 厘米&#xff0c;所以她认为自己比小熊高 厘米。这个逻辑甚至可以推广到整数&#xff0c;比如 &#xff0…

make_ext4fs:not found

报错信息&#xff1a; 解决&#xff1a; sudo apt-get install android-tools-fsutils sudo apt-get install android-sdk-libsparse-utils sudo apt-get install android-sdk-ext4-utils

跟TED演讲学英文:Let your garden grow wild by Rebecca McMackin

Let your garden grow wild Link: https://www.ted.com/talks/rebecca_mcmackin_let_your_garden_grow_wild Speaker: Rebecca McMackin Date: October 2023 文章目录 Let your garden grow wildIntroductionVocabularySummaryTranscriptAfterword Introduction Many garden…

Python中的None用法深度解析

Python中的None用法深度解析 在Python编程中&#xff0c;None是一个特殊的常量&#xff0c;它表示一个空或无值的状态。理解None的用法对于编写健壮且易于理解的代码至关重要。本文将从四个方面、五个方面、六个方面和七个方面深入剖析Python中None的用法。 四个方面&#xf…

怎么等比例缩小图片尺寸?这四种方法肯定可以帮到你!

怎么等比例缩小图片尺寸&#xff1f;在当今日常生活中&#xff0c;图片文件是我们不可或缺的一部分&#xff0c;它们以各种形式出现&#xff0c;从社交媒体上的照片到工作文档中的插图&#xff0c;然而&#xff0c;随之而来的问题是&#xff0c;有时这些图片文件的尺寸过大&…

c++模板进阶——特化

模板参数&#xff1a; 模板参数分类类型形参与非类型形参。 类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称。 非类型形参&#xff1a;就是用一个常量作为类(函数)模板的一个参数&#xff0c;在类(函数)模板中可将该参数当成…

Threejs墙体挖洞做门或窗

在使用Threejs代码构建的展厅中&#xff0c;需要在一面墙中间挖个洞作为门或窗户&#xff0c;效果如下&#xff1a; 引入ThreeBSP.js <script src"plugins/three/ThreeBSP.js"></script> 创建 // 1 定义墙面var cubeGeometry new THREE.BoxGeometry(1…

今日代码大赏 | Spring Cloud Gateway 全局过滤器实现

在构建微服务架构时&#xff0c;Spring Cloud Gateway 作为服务网关&#xff0c;承担着路由转发、权限校验等职责。 全局过滤器&#xff08;Global Filter&#xff09;是 Spring Cloud Gateway 中用于处理跨服务的通用逻辑的组件&#xff0c;例如权限验证、日志记录等。 下面…

使用 LiteGraph.js 构建可视化工作流图

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 使用 LiteGraph.js 构建可视化工作流图 应用场景介绍 LiteGraph.js 是一个轻量级的开源 JavaScript 库&#xff0c;用于构建可视化工作流图。它广泛应用于游戏开发、数据可视化、交互式叙事等领域。 代码基本…

【HarmonyOS】应用通知广播的使用

【HarmonyOS】应用通知广播的使用 一、通知广播是什么&#xff1f; 应用开发多年的同学&#xff0c;对于时间通知广播是比较熟悉。一般刚接触的同学可能不太清楚&#xff0c;下面简单介绍一下&#xff0c;了解的同学可以跨过&#xff0c;直接看第二节。 通知广播&#xff0c;…

2024会声会影激活码免费注册码大揭秘!

在当今数字化时代&#xff0c;视频编辑已经成为了许多人日常生活和工作中不可或缺的一部分。无论是制作短视频、Vlog还是专业影视剪辑&#xff0c;一款优秀的视频编辑软件都能让我们事半功倍。而市面上众多的视频编辑软件中&#xff0c;会声会影无疑是备受瞩目的一款。本文将为…

【全开源】知识库文档系统(ThinkPHP+FastAdmin)

&#x1f4da;知识库文档系统&#xff1a;解锁知识的无限可能 一款基于ThinkPHPFastAdmin开发的知识库文档系统&#xff0c;可用于企业工作流程的文档管理&#xff0c;结构化记录沉淀高价值信息&#xff0c;形成完整的知识体系&#xff0c;能够轻松提升知识的流转和传播效率&a…

短剧出海的第一桶金

经过了第一套短剧出海H5系统的不好体验的经历&#xff0c;敏锐地发现海外短剧出海系统的需求量很大。很多做国内短剧平台的企业&#xff0c;和一些创业者&#xff0c;都有搭建自己平台的想法。 反思与痛点 H5系统的痛点&#xff1a; 底层框架问题&#xff1a; 问题&#xff1…

2024.06.05【读书笔记】丨生物信息学与功能基因组学(第十一章 分子水平的系统发生和进化 第二部分)【AI测试版】

读书笔记二&#xff1a;《生物信息学与功能基因组学》第十一章第二部分 分子水平上的进化机制深入分析 在《生物信息学与功能基因组学》第十一章的第二部分中&#xff0c;作者进一步深入探讨了分子水平上的进化机制。这包括了对突变、自然选择以及物种生长影响条件的详细讨论…

收银系统源码-千呼新零售2.0【合作案例】

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货等连锁店使用。 详细介绍请查看下…

英伟达唯一指定液冷散热供应商维谛技术的股价还有巨大的上涨空间

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 在“全球AI风向标”英伟达带来的超额回报影响下&#xff0c;以及华尔街持续看好英伟达后续走势的带动下&#xff0c;美股已经掀起了一场AI“淘金热”。猛兽财经将在本文中详细介绍一下我们之前就非常看好的一家在全球AI产业…

vue的elementUI的el-tree的选择

有一棵树型的数据,需要实现:在外部加一个 全选和不全选的按钮,去全部勾选树结构里面每一项的选框。 当点击勾选全选的时候,树的每一项都勾选; 当取消全选的时候,树的每一项都不勾选; 当选树的其中一项时,全选按钮是半选状态; 实现效果如下: <template><…