Добавлен конструктор для WorkWithJson чтобы устанавливать кодировку записи и чтения

This commit is contained in:
Ilia Miheev
2025-05-01 21:33:02 +03:00
parent 405bcbe21c
commit cef0c721d5
+6 -2
View File
@@ -41,16 +41,20 @@ class WorkWithScv:
class WorkWithJson: class WorkWithJson:
'''Модуль для работы с json файлами''' '''Модуль для работы с json файлами'''
def __init__(self, encoding:str='utf8'):
self.encoding = encoding
def load(self, pathToJsonFile:str): def load(self, pathToJsonFile:str):
"""Получаем данные из json файла""" """Получаем данные из json файла"""
with open(pathToJsonFile) as jsonFile: with open(pathToJsonFile, encoding=self.encoding) as jsonFile:
src = json.load(jsonFile) src = json.load(jsonFile)
return src return src
def dump(self, pathToJsonFile:str, data:any): def dump(self, pathToJsonFile:str, data:any):
"""Записываем данные в json файл""" """Записываем данные в json файл"""
with open(pathToJsonFile, 'w', encoding='utf8') as jsonFile: with open(pathToJsonFile, 'w', encoding=self.encoding) as jsonFile:
json.dump(data, jsonFile, indent=4, ensure_ascii=0) json.dump(data, jsonFile, indent=4, ensure_ascii=0)