From 7a697302895db033abd4e23a03e91daf6f091cd9 Mon Sep 17 00:00:00 2001 From: Firefly <45487685+Snoopy1866@users.noreply.github.com> Date: Thu, 20 Nov 2025 15:50:08 +0800 Subject: [PATCH 1/2] perf(ci): auto remove sas file which is not found in gbk --- multi_encoding_converter.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/multi_encoding_converter.py b/multi_encoding_converter.py index 0e73256..3f3418b 100644 --- a/multi_encoding_converter.py +++ b/multi_encoding_converter.py @@ -6,16 +6,23 @@ base_encode = "gbk" # 转换编码格式列表 - convert_encode_list = ["utf8", "utf16", "gb2312", "gb18030"] + convert_encode_list = ["utf8", "gb2312", "gb18030"] # 开始转换 base_path = Path("src") / base_encode + base_files = {file.name for file in base_path.glob("*.sas")} + for convert_encode in convert_encode_list: convert_path = Path("src") / convert_encode if not convert_path.exists(): convert_path.mkdir(parents=True) + + # 删除 base_path 中已不存在的文件 + for file in convert_path.glob("*.sas"): + if file.name not in base_files: + file.unlink() + + # 复制或更新 base_path 中的文件 for file in base_path.glob("*.sas"): content = file.read_text(encoding=base_encode) - (Path(convert_path) / file.name).write_text( - content, encoding=convert_encode - ) + (Path(convert_path) / file.name).write_text(content, encoding=convert_encode) From ff011b244b817ab56c99b828d07bbea8b69a7939 Mon Sep 17 00:00:00 2001 From: Firefly <45487685+Snoopy1866@users.noreply.github.com> Date: Thu, 20 Nov 2025 15:51:54 +0800 Subject: [PATCH 2/2] remove utf16 --- src/utf16/ass2.sas | Bin 60104 -> 0 bytes src/utf16/ass3.sas | Bin 73114 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/utf16/ass2.sas delete mode 100644 src/utf16/ass3.sas diff --git a/src/utf16/ass2.sas b/src/utf16/ass2.sas deleted file mode 100644 index c69c161d5e53e5fed9db9d145e437db9738ccd70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60104 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