QIODevice::Text和QIODevice::Truncate区别

最近做项目时,需要将从服务端下载的配置数据保存到本地文件,并保证将该本地文件重新导入到服务端后能够使服务端回复原来的配置,最开始使用的保存数据到文件代码:

QFile file(filename);
file.open(QIODevice::ReadWrite|QIODevice::Text)
file.write(downloaddata);

但是发现重新将该文件导入到服务端后,服务端恢复的不是原来的配置,然后用正确的配置文件和我代码保存的文件对比,发现用上述方式保存的文件里面内容的所有的行结束符被换成了换符/n,导致和正确的配置文件发生了差异。经查询发现这是QIODevice::Text引起的,将QIODevice::Text换成QIODevice::Truncate可以修复该问题。

ps:QT帮助文档中对QIODevice::Text描述是说在读取时,将行结束符转换成 \n;在写入时,将行结束符转换成本地格式,例如 Win32 平台上是 \r\n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值