You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何给Tkinter输入框保存的JSON文件添加换行符?

解决JSON文件写入后添加换行符的问题

你之前的两种方法没生效的原因很明确:

  • 使用newline="\r\n"参数:这个参数是控制文件文本模式下的换行转换规则,但json.dump本身不会主动给写入的内容追加换行,所以设置了也起不到效果。
  • 给usern加"\n"后用json.dump:json.dump会把字符串里的换行符转义成\\n保存到文件中,你看到的是转义后的字符,不是实际的换行。

给你两种可行的解决方案:

方案一:先写入JSON内容,再手动追加换行符

先通过json.dump把输入内容写入文件,之后直接调用文件对象的write方法写入换行符:

with open(udf, "a", encoding="utf-8") as file_object:
    json.dump(usern, file_object)
    file_object.write("\n")  # 手动添加实际换行

方案二:先转成JSON字符串,再拼接换行符写入

用json.dumps把输入内容转换成JSON格式的字符串,然后拼接换行符后写入文件:

with open(udf, "a", encoding="utf-8") as file_object:
    json_content = json.dumps(usern)
    file_object.write(json_content + "\n")

这两种方法都能让每次提交的内容在JSON文件里单独占一行,不会出现换行符被转义的问题。

内容的提问来源于stack exchange,提问作者AngusAU293

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 12:55:21