summaryrefslogtreecommitdiff
path: root/ATRI
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2023-04-06 16:56:10 +0800
committerKyomotoi <[email protected]>2023-04-06 16:56:10 +0800
commitc905eb776d0e6b8c8930faf857ab07f070bdfb49 (patch)
treefe7a02d08c34d6a47198d18d655e22e35979e2f9 /ATRI
parent51aa691f26403d2a01f27dd639872c0768ec2035 (diff)
downloadATRI-c905eb776d0e6b8c8930faf857ab07f070bdfb49.tar.gz
ATRI-c905eb776d0e6b8c8930faf857ab07f070bdfb49.tar.bz2
ATRI-c905eb776d0e6b8c8930faf857ab07f070bdfb49.zip
🎨 优化工具类文件操作代码
Diffstat (limited to 'ATRI')
-rw-r--r--ATRI/plugins/broadcast.py5
-rw-r--r--ATRI/plugins/essential/__init__.py8
-rw-r--r--ATRI/utils/__init__.py7
3 files changed, 13 insertions, 7 deletions
diff --git a/ATRI/plugins/broadcast.py b/ATRI/plugins/broadcast.py
index 863381a..dd42c42 100644
--- a/ATRI/plugins/broadcast.py
+++ b/ATRI/plugins/broadcast.py
@@ -1,4 +1,3 @@
-import json
import random
import asyncio
@@ -28,7 +27,7 @@ async def __load_reject_list() -> list:
path = plugin.get_path() / "rej_list.json"
file = FileDealer(path)
if not path.is_file():
- await file.write(list())
+ await file.write_json(list())
return list()
return list(file.json())
@@ -40,7 +39,7 @@ async def __store_reject_list(data: list) -> None:
if not path.is_file():
await __load_reject_list()
- await file.write(data)
+ await file.write_json(data)
plugin = Service("广播").document("向bot所在的所有群发送信息").rule(to_bot())
diff --git a/ATRI/plugins/essential/__init__.py b/ATRI/plugins/essential/__init__.py
index c16e101..883c191 100644
--- a/ATRI/plugins/essential/__init__.py
+++ b/ATRI/plugins/essential/__init__.py
@@ -49,7 +49,7 @@ async def _(event: FriendRequestEvent):
path = __ESSENTIAL_DIR / "friend_add.json"
file = FileDealer(path)
if not path.is_file():
- await file.write(dict())
+ await file.write_json(dict())
data = dict()
apply_code = event.flag
@@ -63,7 +63,7 @@ async def _(event: FriendRequestEvent):
comment=apply_comment,
time=now_time,
).dict()
- await file.write(json.dumps(data))
+ await file.write_json(data)
result = (
MessageBuilder("咱收到一条好友请求!")
@@ -83,7 +83,7 @@ async def _(event: GroupRequestEvent):
path = __ESSENTIAL_DIR / "group_invite.json"
file = FileDealer(path)
if not path.is_file():
- await file.write(dict())
+ await file.write_json(dict())
data = dict()
apply_code = event.flag
@@ -97,7 +97,7 @@ async def _(event: GroupRequestEvent):
comment=apply_comment,
time=now_time,
).dict()
- await file.write(json.dumps(data))
+ await file.write_json(data)
result = (
MessageBuilder("咱收到一条应邀入群请求!")
diff --git a/ATRI/utils/__init__.py b/ATRI/utils/__init__.py
index 328f1ad..a6526c2 100644
--- a/ATRI/utils/__init__.py
+++ b/ATRI/utils/__init__.py
@@ -128,6 +128,13 @@ class FileDealer:
async def write(self, content):
try:
async with aiofiles.open(self.path, "w", encoding=self.encoding) as target:
+ await target.write(content)
+ except Exception:
+ raise Exception(f"Writing file ({self.path}) failed!")
+
+ async def write_json(self, content):
+ try:
+ async with aiofiles.open(self.path, "w", encoding=self.encoding) as target:
await target.write(json.dumps(content))
except Exception:
raise Exception(f"Writing file ({self.path}) failed!")