Qt--软件开发流程简介、Qt中的文件操作

一.软件开发流程

Q.什么是软件开发流程?
1.通过一系列步骤保证软件的顺利完成
2.软件产品在生命期内的管理方法学
软件开发流程的本质
1.开发流程与具体技术无关
2.开发流程是开发团队必须遵守的规则
常见的开发流程--即兴、瀑布、增量、螺旋、敏捷等
A.即兴模型
1.与最终用户交流后立即开始进行开发
2.没有需求分析和需求发掘的过程
3.没有整体设计以及规划的过程
4.没有相关软件文档,维护性差
B.瀑布模型
1.通过自上而下的步骤进行软件开发
2.每个开发步骤都是不可逆的

C.增量模型
1.将系统能分解为互不重叠的子功能
2.每次全力实现一个子功能
3.子功能全部完成后系统开发结束

D.螺旋模型
1.采用一种迭代的方法进行系统开发
2.软件项目分解成多个不同的版本完成
3.每个版本的开发过程都需要用户参与
4.根据前一个版本的反馈计划下一个版本
E.敏捷模型
1.一切从简
2.拥抱变化
3.高效工作
4.持续开发

二.Qt中的文件操作

A.Qt的IO操作的处理方式
1.Qt通过统一的接口简化了文件与外部设备的操作方式
2.Qt中的文件被看作一种特殊的外部设备
3.Qt中的文件按操作与外部设备的操作相同
B.IO操作中的关键函数接口
1.打开设备:bool open
2.读取数据:QByteArray read
3.写入数据:qint64 write
4.关闭设备:void close
IO操作的本质:连续存储空间的数据读写
C.Qt中IO设备的类型
1.顺序存取设备--只是从头开始顺序的读写数据,不能指定数据的读写位置
2.随机存取设备--可以定位到任意的位置进行数据的读写
Qt中IO设备的继承层次图

QFile是Qt中用于文件操作的类
QFile对象对应到计算机上的一个文件

QFileInfo类用于读取文件属性信息

D.Qt中提供了临时文件操作类QTemporaryFile
1.安全地创建一个全局唯一的临时文件
2.当对象销毁时对应的临时文件将被删除
3.临时文件的打开方式为QIODevice::ReadWrite
4.临时文件常用于大数据传递或者进程间通信的场合
代码示例

#include <QtCore/QCoreApplication>
#include <QFile>
#include <QByteArray>
#include <QDebug>
#include <QFileInfo>
#include <QDateTime>

void write(QString f)
{
    QFile file(f);

    if( file.open(QIODevice::WriteOnly | QIODevice::Text) )
    {
        file.write("mylove\n");
        file.write("dangdangxiaohai\n");
        file.close();
    }
}

void read(QString f)
{
    QFile file(f);

    if( file.open(QIODevice::ReadOnly | QIODevice::Text) )
    {
        QByteArray ba = file.readLine();
        QString s(ba);

        qDebug() << s;

        file.close();
    }
}

void info(QString f)
{
    QFile file(f);
    QFileInfo info(file);

    qDebug() << info.exists();
    qDebug() << info.isFile();
    qDebug() << info.isReadable();
    qDebug() << info.isWritable();
    qDebug() << info.created();
    qDebug() << info.lastRead();
    qDebug() << info.lastModified();
    qDebug() << info.path();
    qDebug() << info.fileName();
    qDebug() << info.suffix();
    qDebug() << info.size();
}

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    write("C:/Users/59673/Desktop/test.txt");
    read("C:/Users/59673/Desktop/test.txt");
    info("C:/Users/59673/Desktop/test.txt");

    return a.exec();
}

生成的结果图

原文地址:https://blog.51cto.com/13475106/2428914

时间: 2024-10-26 23:36:48

Qt--软件开发流程简介、Qt中的文件操作的相关文章

QT开发(二十三)——软件开发流程

QT开发(二十三)--软件开发流程 一.软件开发流程简介 软件开发流程是通过一系列步骤保证软件产品的顺利完成,是软件产品在生命周期内的管理学. 软件开发流程的本质是软件开发流程与具体技术无关,是开发团队必须遵守开的规则. 二.常见软件开发流程模型 常见的软件开发流程模型包括即兴模型.瀑布模型.增量模型.螺旋模型.敏捷模型. 1.即兴模型 即兴模型的特点: A.与用户交流后立即进行开发 B.没有需求分析和需求发掘过程 C.没有整体设计和规划 D.没有软件文档,可维护性差 2.瀑布模型 瀑布模型的特

软件开发流程中的问题解析

软件开发流程是每个技术开发公司经常需要面对的问题,它在很大程度上决定了一个软件开发公司能不能做出好产品 ,并且是不是一种高效率的状态.下面就来简单对软件开发流程中的问题做些简单解析,方便开发者能够更加清晰开发中需要注意的事项,并找到符合自身的开发流程. 确定需要软件开发的思想来源是丰富的.这些想法可以来自市场研究,包括潜在新客户的人口统计,现有客户,产品的销售前景,其他内部软件开发人员或创意第三方.软件产品的想法通常首先由营销人员评估经济可行性,以适应现有渠道分布,对现有产品线可能产生的影响,所

智能家居项目(1):软件开发流程

结合公司开发过的产品以及对自学知识的总结,整理出此系列文章  .侧重点还是在软件部分. 公司开发某个项目,肯定是为了盈利赚钱.开发的项目无非就是自己的产品或者承接甲方的开发任务. 大体的流程可以分为几个部分或阶段: 1.需求说明书 预期想要一个什么功能,达到什么样的效果.有的客户也说不明白具体的东西,描述不清.需要加强沟通交流,确定最终的模型.一般情况下是甲方就提供好了的.关键部分大致如下: 监控功能 监控室内温度,监控红外传感器,以阻塞或异步的方式对红外传感器进行检测,如果红外传感器探测到有不

软件开发流程(转载)

软件开发流程 迭代化软件开发技术 1. 传统开发流程的问题 传统的 软件开发流程是一个文档驱动的流程,它将整个软件开发过程划分为顺序相接的几个阶段,每一个阶段都必需完毕所有规定的任务(文档)后才可以进入下一个阶段. 如必须完毕所有的系统需求规格说明书之后才可以进入概要设计阶段,编码必需在系统设计完毕之后才可以进行.这就意味着仅仅有当所有的系统模块所有开发完毕之 后,我们才进行系统集成,对于一个由上百个模块组的复杂系统来说,这是一个很艰巨而漫长的工作. 随着我们所开发的软件项目越来越复杂,传统的瀑

软件开发流程选择

软件工程把这些相关的技术和过程统一到一个体系中,叫作"软件开发流程",软件开发流程的目的是为了提高软件开发.运营和维护的效率,以及提升用户满意度.软件可靠性和可维护性.        软件开发流程有:写了再改模式.瀑布模型.瀑布模型的各种变形.统 一流程.老板驱动的流程和渐进交付的流程.        在这些开发流程中,我比较支持瀑布模型的各种变形中的大瀑布带着小瀑布,这个对开发者的个人能力要求比较高,需要吧各个子系统统一到最后做系统测试,用户只有到最后才能看到结果,从一开始的需要一个

团队模式与软件开发流程的选择

1.团队模式的选择 软件团队的模式有主治医师模式.明星模式.社区模式.业余剧团模式.秘密团队.特工团队.交响乐模式.爵士乐模式.功能团队模式.官僚模式. 我比较倾向于交响乐模式和功能团队模式.交响乐模式的主要特点是门类齐全,各司其职,有共同方向的.其优点是在开发过程中分工明确,大家可以术业有专攻,效率比较高.缺点是适用于某歌软件领域处于稳定成长的阶段,如果是在刚开始的时候可能会产生分歧. 功能团队模式的主要特点是:人人平等,没有管理与被管理的关系.优点是小组间交流比较频繁,不同能力的人可以平等协

软件开发流程的选择

软件开发流程的定义:我们在开发.运营.维护软件的过程中有很多技术.做法.习惯和思想.软件工程把这些相关的技术和过程统一到一个体系中,叫做"软件开发流程". 软件开发流程有:写了再改模式.瀑布模型.瀑布模型的各种变形(生鱼片模型.大瀑布带着小瀑布).统一流程(RUP).老板驱动的流程.渐进交付流程. 软件开发的目的:为了提高软件开发.运营和维护的效率,以及提高用户满意度.软件的可靠性和维护性. 我选择统一流程. 统一流程的步骤:业务建模:需求:分析和设计:实现:测试部署:配置和变更管理:

让你提前认识软件开发(22):shell脚本中的文件操作

第1部分 重新认识C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比如从文件中读取一行数据.向文件追加一行数据等.完成文件读写操作的方法有很多,了解各种命令下文件操作的执行情况,有助于开发人员在不同使用场景下选择合适的命令. 本文以实际的shell脚本为例,介绍了对文件进行操作的不同方法,为相关开发工作提供了参考. [关键词] shell  文件操作  读写  效率 一.概述 在某些软件项目的需求文档中,要求程序一次性读或写的数据规模较大,可达1

软件开发流程------阅读《构建之法》 第5.5 第6 第7章

软件开发流程中的瀑布模型,圆形,螺旋都是根据用户所需而设计的模型,我们也要根据他们的特征特点去实现我们我们想要的开发流程. 1.一些项目需要很多暗箱操作和政治角力才能搞定,既然Scrum会吧这些矛盾都摆到明处,我们如何才能把风险降到最低?出自6.42敏捷流程的经验教训. 2.我还是分不清敏捷开发和MSF敏捷开发根本性的区别是什么? 感悟:<构造之法>这本书,传授给我的是另一种触动的知识,或许你看了好几章了,你才有那么一两个问题,那是因为我觉得这本书已经走向大众了,即使没有那么专业的我们也能把它