diff --git a/Source/GrasscutterTools/Pages/PageCustomCommands.cs b/Source/GrasscutterTools/Pages/PageCustomCommands.cs
index efdda2c..ae69988 100644
--- a/Source/GrasscutterTools/Pages/PageCustomCommands.cs
+++ b/Source/GrasscutterTools/Pages/PageCustomCommands.cs
@@ -38,7 +38,7 @@ namespace GrasscutterTools.Pages
///
/// 自定义命令保存位置
///
- private readonly string CustomCommandsFilePath = Path.Combine(Application.LocalUserAppDataPath, "CustomCommands.txt");
+ private readonly string CustomCommandsFilePath = Common.GetAppDataFile("CustomCommands.txt");
///
/// 自定义命令是否存在更改
diff --git a/Source/GrasscutterTools/Pages/PageGiveItem.cs b/Source/GrasscutterTools/Pages/PageGiveItem.cs
index 7606502..6009891 100644
--- a/Source/GrasscutterTools/Pages/PageGiveItem.cs
+++ b/Source/GrasscutterTools/Pages/PageGiveItem.cs
@@ -100,7 +100,7 @@ namespace GrasscutterTools.Pages
///
/// 获取物品记录文件路径
///
- private readonly string GiveItemCommandsRecordPath = Path.Combine(Application.LocalUserAppDataPath, "GiveItemCommands.txt");
+ private readonly string GiveItemCommandsRecordPath = Common.GetAppDataFile("GiveItemCommands.txt");
///
/// 获取物品记录
diff --git a/Source/GrasscutterTools/Pages/PageMail.cs b/Source/GrasscutterTools/Pages/PageMail.cs
index a9df085..f2e73c5 100644
--- a/Source/GrasscutterTools/Pages/PageMail.cs
+++ b/Source/GrasscutterTools/Pages/PageMail.cs
@@ -208,7 +208,7 @@ namespace GrasscutterTools.Pages
///
/// 获取物品记录文件路径
///
- private readonly string MailListPath = Path.Combine(Application.LocalUserAppDataPath, "MailList.json");
+ private readonly string MailListPath = Common.GetAppDataFile("MailList.json");
///
/// 邮件列表
diff --git a/Source/GrasscutterTools/Pages/PageSpawn.cs b/Source/GrasscutterTools/Pages/PageSpawn.cs
index d293786..e6ddec8 100644
--- a/Source/GrasscutterTools/Pages/PageSpawn.cs
+++ b/Source/GrasscutterTools/Pages/PageSpawn.cs
@@ -156,7 +156,7 @@ namespace GrasscutterTools.Pages
///
/// 生成命令记录文件路径
///
- private readonly string SpawnCommandsRecordPath = Path.Combine(Application.LocalUserAppDataPath, "SpawnCommands.txt");
+ private readonly string SpawnCommandsRecordPath = Common.GetAppDataFile("SpawnCommands.txt");
///
/// 生成命令记录
diff --git a/Source/GrasscutterTools/Utils/Common.cs b/Source/GrasscutterTools/Utils/Common.cs
index f6f5ed3..69f4eef 100644
--- a/Source/GrasscutterTools/Utils/Common.cs
+++ b/Source/GrasscutterTools/Utils/Common.cs
@@ -1,4 +1,5 @@
using System;
+using System.IO;
using GrasscutterTools.Game;
using GrasscutterTools.OpenCommand;
@@ -21,5 +22,14 @@ namespace GrasscutterTools.Utils
/// 开放命令接口
///
public static OpenCommandAPI OC { get; set; }
+
+ ///
+ /// 应用数据目录
+ ///
+ public static string GetAppDataFile(string filename) =>
+ Path.Combine(
+ Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
+ "GrasscutterTools",
+ filename);
}
}