Pyqt6在lineEdit中输入文件名称并创建或删除JSON文件

1、创建JSON文件

代码

import os

def addModulekeyWordFile(self):
    if "" != self.lineEdit_module.text():
      moduleFile = self.lineEdit_module.text() + '.json'
    else:
      self.toolLogPrinting('请输入模块名称')
      return
    filePath = modulekeyWordFileDir + moduleFile
    if os.path.exists(filePath):
      self.toolLogPrinting('文件已经存在于:' + filePath)
    else:
      with open(filePath, 'w') as f:
          f.write('{}')
      f.close()
      self.toolLogPrinting('已创建:' + filePath)
      self.refreshModulComboBox(modulekeyWordFileDir)

 def toolLogPrinting(self, content):
    curtime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
    self.plainTextEdit.appendPlainText(curtime + "  "+ content)

  def refreshModulComboBox(self, fileDir):
    self.getFileName(fileDir)
    self.comboBox_logmodule.clear()
    self.comboBox_logmodule.addItems(moduleFilename_arr)

代码功能解释

这段代码的功能是添加模块关键字文件

具体步骤如下:

1. 检查用户是否输入了模块名称。如果没有输入,则提示用户输入模块名称并返回。

2. 如果用户输入了模块名称,则生成对应的 JSON 文件路径。

3. 检查该文件是否存在。如果文件已存在,则提示用户文件已存在。

4. 如果文件不存在,则创建该文件,并写入空的 JSON 对象 `{}`。

5. 最后,刷新模块组合框以反映新添加的文件。 

控制流图

解释

  • A:开始执行 addModulekeyWordFile 方法。
  • B:检查用户是否在文本框中输入了模块名称。
  • C:如果模块名称为空,提示用户输入模块名称并结束方法。
  • D:如果模块名称不为空,生成对应的 JSON 文件路径。
  • E:检查生成的文件路径是否存在。
  • F:如果文件已存在,提示用户文件已存在。
  • G:如果文件不存在,创建文件并写入空的 JSON 对象。
  • H:刷新模块组合框以反映新添加的文件。
  • I:结束方法。

2、删除JSON文件

    代码

import os

def delmoduleFile(self):
    if "" != self.lineEdit_module.text():
      moduleFile = self.lineEdit_module.text() + '.json'
    else:
      self.toolLogPrinting('请输入模块名称')
      return
    filePath = modulekeyWordFileDir + moduleFile
    if os.path.exists(filePath):
      os.remove(filePath)
      self.toolLogPrinting('文件删除成功')
      self.refreshModulComboBox(modulekeyWordFileDir)
    else:
      self.toolLogPrinting('没有找到要删除的文件:' + filePath)

代码功能解释

这段代码实现了删除模块文件的功能,

具体步骤如下:

1. 检查用户是否输入了模块名称。

2. 如果有输入,则生成对应的JSON文件路径。

3. 检查文件是否存在。

4. 如果文件存在,则删除文件并刷新模块组合框;如果文件不存在,则提示用户。

控制流图

解释

  • A[开始]: 函数开始执行。
  • B{检查模块名称是否为空}: 检查用户是否在 lineEdit_module 中输入了模块名称。
  • C[提示请输入模块名称]: 如果模块名称为空,提示用户输入模块名称并结束函数。
  • D[生成文件路径]: 如果模块名称不为空,生成对应的JSON文件路径。
  • E{检查文件是否存在}: 检查生成的文件路径是否存在。
  • F[删除文件]: 如果文件存在,删除该文件。
  • G[提示删除成功]: 提示用户文件删除成功。
  • H[刷新模块组合框]: 刷新模块组合框以反映最新的模块列表。
  • I[提示没有找到文件]: 如果文件不存在,提示用户没有找到要删除的文件。
  • J[结束]: 函数结束。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

练习题 最小栈

最小栈 最小栈 class MinStack {private Stack<Integer> stack;private Stack<Integer> minstack;public MinStack() {stacknew Stack<>();minstacknew Stack<>();}public void push(int val) {stack.push(val);if(minstack.empty()){minstack.push(…

概率论得学习和整理32: 用EXCEL描述正态分布,用δ求累计概率,以及已知概率求X的区间

目录 1 正态分布相关 2 正态分布的函数和曲线 2.1 正态分布的函数值&#xff0c;用norm.dist() 函数求 2.2 正态分布的pdf 和 cdf 2.3 正态分布的图形随着u 和 δ^2的变化 3 正态分布最重要的3δ原则 3.0 注意&#xff0c;这里说的概率一定是累计概率CDF&#xff0c;而…

食家巷大烤馍:岁月沉淀下的麦香传奇

在繁华都市的街角巷尾&#xff0c;隐藏着许多不为人知的美食宝藏&#xff0c;食家巷大烤馍便是其中之一。它宛如一位低调的美食大师&#xff0c;默默散发着独特的魅力&#xff0c;用最质朴的味道&#xff0c;征服着每一个过往食客的味蕾。 初见食家巷大烤馍&#xff0c;你会被…

wxWidgets使用wxStyledTextCtrl(Scintilla编辑器)的正确姿势

开发CuteMySQL/CuteSqlite开源客户端的时候&#xff0c;需要使用Scintilla编辑器&#xff0c;来高亮显示SQL语句&#xff0c;作为C/C领域最成熟稳定又小巧的开源编辑器&#xff0c;Scintilla提供了强大的功能&#xff0c;wxWidgets对Scintilla进行包装后的是控件类&#xff1a;…

【基础还得练】数值分析中的样条插值

什么是三次样条&#xff08;Cubic Spline&#xff09;&#xff1f; 三次样条&#xff08;Cubic Spline&#xff09;是一种常用于数据插值和曲线拟合的数学方法&#xff0c;它利用多个三次多项式函数来平滑连接数据点&#xff0c;使得拟合曲线不仅通过所有数据点&#xff0c;同时…

AMS1117芯片驱动电路·降压芯片的驱动电路详解

目录 AMS1117常见封装 AMS1117不同系列 AMS1117驱动电路 参考数据手册 编写不易&#xff0c;仅供学习&#xff0c;请勿搬运&#xff0c;感谢理解 相同LDO芯片驱动专栏文章 LM7805系列降压芯片驱动电路降压芯片驱动电路详解-CSDN博客 ME6211C系列降压芯片驱动电路降压芯片…

[项目代码] YOLOv8 遥感航拍飞机和船舶识别 [目标检测]

项目代码下载链接 &#xff1c;项目代码&#xff1e;YOLO 遥感航拍飞机和船舶识别&#xff1c;目标检测&#xff1e;https://download.csdn.net/download/qq_53332949/90163939YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为…

《Qt Creator 4.11.1 教程》

《Qt Creator 4.11.1 教程》 一、Qt Creator 4.11.1 概述&#xff08;一&#xff09;简介&#xff08;二&#xff09;界面构成 二、常用设置指南&#xff08;一&#xff09;环境设置&#xff08;二&#xff09;文本编辑器设置&#xff08;三&#xff09;构建和运行设置 三、构建…

探索未知,乐享惊喜 —— 盲盒APP开发,开启您的个性化惊喜之旅!

在这个瞬息万变的数字时代&#xff0c;我们总在寻找那些能触动心灵、带来无限可能的小确幸。为了满足您对未知的好奇与对惊喜的渴望&#xff0c;我们匠心打造了一款全新的盲盒APP&#xff0c;旨在为您的生活增添一抹不同寻常的色彩&#xff0c;让每一次打开都是一次全新的探索与…

前端和后端解决跨域问题的方法

目前很多java web开发都是采用前后端分离框架进行开发&#xff0c;相比于单体项目容易产生跨域问题。 一、跨域问题CORS 1.什么是跨域问题&#xff1f; 后端接收到请求并返回结果了&#xff0c;浏览器把这个响应拦截了。 2.跨域问题是怎么产生的&#xff1f; 浏览器基于同源…

c#上班,上学,交通方式接口

using System;namespace INTERFACE {abstract class Person{public string Name { get; set; }public int Age { get; set; }public virtual void ShowInfo(){Console.WriteLine($"Name: {Name}, Age: {Age}");}}// 接口 IWorkinterface IWork{void GotoCompany();}/…

SQL血缘解析

Druid 作为使用率特别高的的数据库连接池工具,在具备完善的连接池管理功能外,同时Druid 的 SQL解析功能可以用来防止 SQL注入等安全风险。通过对 SQL 语句进行解析和检查,Druid 可以识别并阻止潜在的恶意 SQL 语句执行,黑名单(阻止特定的 SQL 语句执行)、白名单(仅允许特…

常用的JVM启动参数有哪些?

大家好&#xff0c;我是锋哥。今天分享关于【常用的JVM启动参数有哪些?】面试题。希望对大家有帮助&#xff1b; 常用的JVM启动参数有哪些? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 JVM启动参数用于配置Java虚拟机&#xff08;JVM&#xff09;的运行时行为…

JWT令牌与微服务

1. 什么是JWT JWT&#xff08;JSON Web Token&#xff09;是一种开放标准(RFC 7519)&#xff0c;它定义了一种紧凑且自包含的方式&#xff0c;用于作为JSON对象在各方之间安全地传输信息。JWT通常用于身份验证和信息交换。 以下是JWT的一些关键特性&#xff1a; 紧凑&#xff…

RadiAnt DICOM - 基本主题 :从 PACS 服务器打开研究

正版序列号获取&#xff1a;https://r-g.io/42ZopE RadiAnt DICOM Viewer PACS 客户端功能允许您从 PACS 主机&#xff08;图片存档和通信系统&#xff09;搜索和下载研究。 在开始之前&#xff0c;您需要确保您的 PACS 服务器和 RadiAnt 已正确配置。有关配置说明&#xff0c…

10. 虚拟机VMware Workstation Pro下共享Ubuntu和Win11文件夹

本文记录当前最新版虚拟机VMware Workstation Pro&#xff08;2024.12&#xff09;如何在win11下共享文件&#xff0c;以实现Windows与Ubuntu互传文件的目的。 1. 创建共享文件夹 1.1 先关闭虚拟机的客户机&#xff0c;打开虚拟机设置 1.2 在虚拟机设置界面找到“选项”->“…

java开发入门学习四-运算符

运算符 运算符&#xff1a; 运算法是一种特殊的符号&#xff0c;标识数据的运算&#xff0c;赋值等 根据分类 算数运算符 和前端运算法的方式是一致的&#xff0c;这里简单的描述% -- %: 取余 &#xff1a;增加 --&#xff1a; 减少 class Computed {public static voi…

EGO Planner代码解析bspline_optimizer部分(3)

1、 int BsplineOptimizer::earlyExit(void *func_data, const double *x, const double *g, const double fx, const double xnorm, const double gnorm, const double step, int n, int k, int ls) //如果force_stop_type_不为DONT_STOP就返回true&#xff0c;否则返回false…

Spring框架IOC

目录 一、Spring框架的介绍 1.1 Spring框架的概述 1.2 Spring框架的优点 二、Spring的核心 IOC技术 2.1 什么是IOC 2.2 IOC的程序入门 2.3 IOC技术总结 2.4 Spring框架的Bean管理的配置文件方式 一、Spring框架的介绍 1.1 Spring框架的概述 Spring是一个开放源代码的…

跨站脚本攻击的多种方式——以XSS-Labs为例二十关详解解题思路

一、XSS-Labs靶场环境搭建 1.1、XSS介绍 跨站脚本攻击&#xff08;XSS&#xff09;_跨站脚本测试-CSDN博客https://coffeemilk.blog.csdn.net/article/details/142266454 1.2、XSS-Labs XSS-Labs是一个学习XSS攻击手法的靶场&#xff0c;方便我们系统性的学习掌握跨站脚本攻击…