账户登录的实现

  • 账户登录的实现
  • 基本思路
  • 代码实现

基本思路

建一个类专门用来读取txt文档以及做account是否正确的判断,同时这个类还要担任之后的元件的读取和写入、用户的操作记录

代码实现

只po上判断用户密码是否正确的一个函数

void JudgeData::OpenAccount(QLineEdit *account, QLineEdit *password)  //两个控件
{QFile file("Account.txt");          //暂时不考虑自定义路径file.open(QIODevice::ReadWrite);QTextStream stream(&file);            QString realAccount;              //读取到的账户int realPassword;              //读取到的正确密码QString accountS = account->text();   //用户输入的账户QString passwordS = password->text();        //用户输入的密码QMessageBox passMessage;            QMessageBox errorMessage;while(!stream.atEnd()){realAccount = stream.readLine(10);        //用户名都是十位的十进制数字if (realAccount == accountS){stream.read(1);                 //跳过空格stream >> realPassword;                    if (realPassword == passwordS.toInt()){passMessage.setText("Login Success");passMessage.exec();break;}else{errorMessage.setText("Password Error,Please Check");errorMessage.exec();break;}}}if (stream.atEnd())                 //到了末尾还没检索到账户 报错{errorMessage.setText("No Account Data,Please Check or Contact the Teacher");errorMessage.exec();}file.close();
}

Account.txt:

1200132212 123456
1200132210 123456

这里比较重要的是 QTextStream 的操作,readLine() 函数以及>> 操作

这里的readLine(10) 表示读取此行的前个数字,当 while 进入下一个循环的时候,就会自动读取下一行,至于如何定位现在在哪一行,因为暂且不需要这功能就不管了,貌似是seek()

>> 操作其实和C++自带的fstream 差不多,但网上的教程似乎都用read ,很不方便,还是这个快

『QT』创客空间元件管理系统|账户登录的实现相关推荐

  1. [日推荐] 『KORJO母爱小空间』妈妈带宝宝出门再也不用愁啦!

    2019独角兽企业重金招聘Python工程师标准>>> 对于哺乳期妈妈们来说,带宝宝出门最大的问题就是哺乳和换尿布,虽然现在很多商场都配置了母婴室,但是走在路上,如果宝宝突然哭闹起来 ...

  2. [日推荐]『忆年共享空间』小而美的私密相册空间

    相册就是一本回忆录,记录着我们的生活,亿年共享相册用一个个小而美的私密空间,为你记录所有值得分析相的时刻. 忆年共享空间,让小圈子共享照片更方便.为亲密小圈子提供快速交换和共享照片的服务,让我们的照片 ...

  3. 【Qt】QtCreator中『设计』按钮是灰色的怎么办?

    在QtCreator中,对于xxx.qml.xxx.ui.qml文件都是可以通过『设计』打开的,只是xxx.qml很多时候是没有任何2D或者3D显示效果的.但是如果在新安装QtCreator的时候没有 ...

  4. 微软云盘配合服务器,『原创』开源5T微软云盘搭建教程onedrive index

    前言 为什么搭建一个微软共享云盘?百度云.蓝奏云不好吗?百度云有会员限制功能,各种限制更是不少,蓝奏云速度超快,但是貌似不支持大文件.微软毕竟是大厂,可用的5T教育邮箱现在也很好搞到,之所以采用是因为 ...

  5. 『转载』Debussy快速上手(Verdi相似)

    『转载』Debussy快速上手(Verdi相似) Debussy 是NOVAS Software, Inc(思源科技)发展的HDL Debug & Analysis tool,这套软体主要不是 ...

  6. 2018年『web』开发者不得不知的技术趋势

    作为一个『web』开发者,无论是做前端还是后端,都应该时刻保持着对技术的敏感性.技术的流行需要一定时间的沉淀,有哪些web相关的技术会可能会在2018年成为web开发的新宠呢?下面列举业界经过实践并且 ...

  7. 『Numpy』内存分析_高级切片和内存数据解析

    在计算机中,没有任何数据类型是固定的,完全取决于如何看待这片数据的内存区域. 在numpy.ndarray.view中,提供对内存区域不同的切割方式,来完成数据类型的转换,而无须要对数据进行额外的co ...

  8. 『数据库』无聊到爆炸的数据库文章--数据库的安全性

    『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不收藏,真的吃亏了) 文章目录 计算机安全性概述 数据库安全性控制 视图机制 审计(Audit) 数据加密 统计数据库安全性 问题的提出 数据库的一 ...

  9. 『数据库』朴实无华的数据库绪论

    『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不收藏,真的吃亏了) 文章目录 数据库系统概述 数据模型 概念模型 数据库系统结构 数据库系统的组成 数据库系统概述 一.四个基本概念 1.数据(D ...

最新文章

  1. 实时监控用户输入--中文输入解决方案
  2. 车辆行人检测数据集_开源 | 相机和激光雷达融合的行人车辆检测跟踪
  3. php数据库访问辅助类,php+MySQL实战案例【二】php数据库辅助类
  4. Oracle session解释
  5. thinkphp mysql 预处理_thinkPHP框架中执行原生SQL语句的方法
  6. c++/cli中System::Type::GetType的使用注意事项
  7. oracle 12c 自动任务,Oracle job自动任务实用指南
  8. VTK:几何对象之PlatonicSolids
  9. FIFO(命名管道)
  10. java学习(142):file类的基本创建
  11. 程序媛记一次在线创建索引被kill案例及应对措施
  12. java token redis生成算法_Redis实现单点登录
  13. Cadence Gerber文件制作过程
  14. 新手入门|计算机科普
  15. 关于Excel表格快捷键
  16. Unity实现音乐播放器
  17. Linux从入门到精通的总结
  18. python函数的传参(bert_vocab_from_dataset),函数括号里面含有**是什么意思?
  19. ncbi 关键字组合查询bioProjectID - 爬虫
  20. MySQL之主键ID生成策略

热门文章

  1. Java实现模拟KTV点歌系统
  2. [ue5]关卡设计与地编_素材处理
  3. Unity3D 5 官方教程:标准着色器之材质参数(一)
  4. 台式计算机电功率为多少,查看台式电脑电源额定功率的方法
  5. java actor akka_Java akka框架入门学习
  6. 简单几步打造彩色素描画!
  7. 把彩色图片变成适合素描的黑白图片
  8. 银联电子支付报文说明
  9. 一、计算机网络体系结构(一)计算机网络概述
  10. 程序员都是吃青春饭,40岁以后怎么办?