From 473b2ca9cf768afc2cb4be90b360e2c41a6f36d9 Mon Sep 17 00:00:00 2001 From: "Mr.Xia" <1424473282@qq.com> Date: Sat, 23 May 2026 15:35:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=BB=9F=E4=B8=80=E8=BE=93=E5=87=BA?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=BC=96=E7=A0=81=E4=B8=BAANSI=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D.NET=206=E4=B8=8BEncoding.Default=E5=9B=9E?= =?UTF-8?q?=E9=80=80=E4=B8=BAUTF-8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.7 --- CommandTypeFileReader.cs | 9 +-------- DrillTapeParameterCleaner.cs | 9 +-------- MainWindowViewModel.cs | 38 ++++-------------------------------- 3 files changed, 6 insertions(+), 50 deletions(-) diff --git a/CommandTypeFileReader.cs b/CommandTypeFileReader.cs index 948cafb..8491115 100644 --- a/CommandTypeFileReader.cs +++ b/CommandTypeFileReader.cs @@ -79,14 +79,7 @@ namespace DrillTools private static Encoding CreateAnsiEncoding() { - try - { - return Encoding.GetEncoding(Gb2312CodePage); - } - catch - { - return Encoding.Default; - } + return Encoding.GetEncoding(Gb2312CodePage); } } } diff --git a/DrillTapeParameterCleaner.cs b/DrillTapeParameterCleaner.cs index a43d782..b8c1762 100644 --- a/DrillTapeParameterCleaner.cs +++ b/DrillTapeParameterCleaner.cs @@ -147,14 +147,7 @@ namespace DrillTools private static Encoding CreateAnsiEncoding() { - try - { - return Encoding.GetEncoding(Gb2312CodePage); - } - catch - { - return Encoding.Default; - } + return Encoding.GetEncoding(Gb2312CodePage); } private readonly record struct DrillTapeLine(string Text, string LineEnding); diff --git a/MainWindowViewModel.cs b/MainWindowViewModel.cs index ad5f083..6d5ee60 100644 --- a/MainWindowViewModel.cs +++ b/MainWindowViewModel.cs @@ -550,18 +550,8 @@ namespace DrillTools } // 3. 将重新排序后的钻带内容写入原始文件,使用ANSI编码 - Encoding ansiEncoding; - try - { - ansiEncoding = Encoding.GetEncoding(936); // 936是GB2312的代码页 - } - catch - { - ansiEncoding = Encoding.Default; // 如果获取失败,使用系统默认编码 - } - // 使用StreamWriter写入文件,确保编码正确应用 - using (var writer = new StreamWriter(OriginalFilePath, false, ansiEncoding)) + using (var writer = new StreamWriter(OriginalFilePath, false, CreateGb2312Encoding())) { writer.Write(reorderedDrillTape); writer.Flush(); // 确保所有数据都被写入 @@ -1394,17 +1384,7 @@ M30"; } // 使用ANSI编码写入文件 - Encoding ansiEncoding; - try - { - ansiEncoding = Encoding.GetEncoding(936); // 936是GB2312的代码页 - } - catch - { - ansiEncoding = Encoding.Default; // 如果获取失败,使用系统默认编码 - } - - File.WriteAllText(outputFilePath, diameterList.ToString(), ansiEncoding); + File.WriteAllText(outputFilePath, diameterList.ToString(), CreateGb2312Encoding()); // 记录日志 System.Diagnostics.Debug.WriteLine($"刀具直径列表文件已生成: {outputFilePath}"); @@ -1461,17 +1441,7 @@ M30"; } // 使用ANSI编码写入文件 - Encoding ansiEncoding; - try - { - ansiEncoding = Encoding.GetEncoding(936); // 936是GB2312的代码页 - } - catch - { - ansiEncoding = Encoding.Default; // 如果获取失败,使用系统默认编码 - } - - File.WriteAllText(outputFilePath, diameterList.ToString(), ansiEncoding); + File.WriteAllText(outputFilePath, diameterList.ToString(), CreateGb2312Encoding()); // 记录日志 System.Diagnostics.Debug.WriteLine($"通用排序种子文件已生成: {outputFilePath}"); @@ -1750,7 +1720,7 @@ M30"; // 2. 创建模拟的参考钻带内容 string mockReferenceContent = CreateMockReferenceDrillTape(Tools.ToList()); string tempReferenceFile = System.IO.Path.GetTempFileName(); - System.IO.File.WriteAllText(tempReferenceFile, mockReferenceContent); + System.IO.File.WriteAllText(tempReferenceFile, mockReferenceContent, CreateGb2312Encoding()); try {