json格式化工具

2024-06-11 18:30 json格式化工具已关闭评论

下面是一个 Python 实现的 JSON 格式化工具,包含一个 GUI 界面。界面分为上下两边,上边用于输入原始 JSON 数据,下边显示格式化后的 JSON 数据。

所需库

  • tkinter:用于创建 GUI 界面
  • json:用于处理 JSON 数据

代码实现

import tkinter as tk
from tkinter import scrolledtext, messagebox
import json

class JSONFormatter:
    def __init__(self, root):
        self.root = root
        self.root.title("JSON 格式化工具")
        self.root.geometry("800x600")

        self.create_widgets()

    def create_widgets(self):
        # 左边原始 JSON 输入区域
        self.raw_json_label = tk.Label(self.root, text="原始 JSON 格式:")
        self.raw_json_label.pack(pady=5)

        self.raw_json_text = scrolledtext.ScrolledText(self.root, width=80, height=20)
        self.raw_json_text.pack(pady=5)

        # 格式化按钮
        self.format_button = tk.Button(self.root, text="格式化", command=self.format_json)
        self.format_button.pack(pady=10)

        # 右边格式化后的 JSON 显示区域
        self.formatted_json_label = tk.Label(self.root, text="格式化 JSON:")
        self.formatted_json_label.pack(pady=5)

        self.formatted_json_text = scrolledtext.ScrolledText(self.root, width=80, height=20)
        self.formatted_json_text.pack(pady=5)

    def format_json(self):
        raw_json = self.raw_json_text.get("1.0", tk.END)
        try:
            parsed_json = json.loads(raw_json)
            formatted_json = json.dumps(parsed_json, indent=4, ensure_ascii=False)
            self.formatted_json_text.delete("1.0", tk.END)
            self.formatted_json_text.insert(tk.END, formatted_json)
        except json.JSONDecodeError as e:
            messagebox.showerror("错误", f"无效的 JSON 数据:\n{e}")

if __name__ == "__main__":
    root = tk.Tk()
    app = JSONFormatter(root)
    root.mainloop()

功能描述

  1. 原始 JSON 格式输入:左边文本框用于输入原始 JSON 数据。
  2. 格式化按钮:点击“格式化”按钮后,程序会将左边文本框中的 JSON 数据进行格式化。
  3. 格式化 JSON 显示:右边文本框显示格式化后的 JSON 数据。

使用说明

  1. 在上边文本框中输入或粘贴原始的 JSON 数据。
  2. 点击“格式化”按钮。
  3. 格式化后的 JSON 数据会显示在下边文本框中。

进一步优化

  1. 错误提示:当输入的 JSON 数据格式不正确时,弹出错误提示。
  2. 复制功能:可以添加按钮实现一键复制格式化后的 JSON 数据。
  3. 文件导入导出:可以添加文件导入和导出功能,方便用户直接读取和保存 JSON 数据。

当前文章价值7元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/3480.html ,谢谢支持!

资源分享

分类:json 标签:, ,
Android Studio启动模拟器提示“HAXM is not installed”的解决办法 Android Studio启动模拟器提示
Hashtable方法解析 Hashtable方法解析
使用Kotlin实现设计模式中的工厂模式 使用Kotlin实现设计模式中的工厂
Android开发之WebView控件使用说明 Android开发之WebView控件使用

评论已关闭!