如何在Python中创建一个类,以便接收用户输入的文件路径,成功读取JSON文件并将其内容转换为字符串,然后将该字符串写入新的文本文件(txt),同时能返回生成的txt文件的路径?
时间: 2024-12-02 18:20:14 浏览: 13
Python实现的json文件读取及中文乱码显示问题解决方法
5星 · 资源好评率100%
在Python中,你可以按照以下步骤创建一个类来实现这个功能:
```python
import json
import os
class FileHandler:
def __init__(self):
self.input_file_path = None
self.output_file_path = None
def set_input_file(self, file_path):
if not os.path.exists(file_path):
print("Input file does not exist.")
return
self.input_file_path = file_path
def read_json_and_write_to_txt(self):
with open(self.input_file_path, 'r') as input_file:
data = json.load(input_file)
output_content = json.dumps(data, indent=4) # 将字典转为带缩进的字符串
self.output_file_path = "output.txt" # 假设你想要保存到当前目录下的一个名为output.txt的文件
with open(self.output_file_path, 'w') as output_file:
output_file.write(output_content)
def get_output_file_path(self):
return self.output_file_path
# 使用示例
file_handler = FileHandler()
file_handler.set_input_file('input.json')
file_handler.read_json_and_write_to_txt()
print(f"Generated txt file path: {file_handler.get_output_file_path()}")
```
在这个例子中,`FileHandler` 类首先初始化两个属性 `input_file_path` 和 `output_file_path`,接着提供了一个方法 `set_input_file` 来设置输入文件路径,并检查其是否存在。`read_json_and_write_to_txt` 方法负责打开输入文件,读取其JSON数据,转换为字符串,然后写入新的TXT文件。最后,通过 `get_output_file_path` 方法获取生成的TXT文件路径。
阅读全文