我创建了一个简单的Windows窗体应用程序来创建excel文件并记录一些调试信息。
创建excel文件时,这是我的代码
xlWorkBook.SaveAs(filePath, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
这是记录一些调试信息时的代码
using (System.IO.StreamWriter file = new System.IO.StreamWriter("logFile.log", true))
我已发布应用程序并将其安装在我的机器中以测试两个文件的位置。我在Excel文件夹中找到了我的excel文件,而日志文件位于C:\ Users \ ME \ AppData \ Local \ Apps \ 2.0 \ METYACXG.8BW \ 3MBVM2YL.M9V \ bill..tion_974a70d1e552787b_0001.0000_c89a52caddc0075b
我想知道这是标准方式还是最佳做法?
答案 0 :(得分:1)
“文档”(或“我的文档”)文件夹是用于保存数据文件的标准和推荐文件夹,例如来自Microsoft Office应用程序的文件。
位于以下位置的文件夹:
C:\Users\user_account\AppData\Local\Apps\2.0\
Vista和更高版本操作系统上的ClickOnce应用程序的文件缓存。
对于您可能正在创建的日志文件和任何其他持久性应用程序数据文件(如ini或xml配置文件),应将它们保存到本地应用程序数据文件夹:
C:\Users\user_account\AppData\Local\your_app_name\
使用以下方法检索本地应用程序数据文件夹的位置
System.Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData);
如果您的应用程序部署在用户帐户使用漫游配置文件的网络上,则您必须在漫游文件夹中使用应用程序名称的自定义文件夹,该文件夹位于:
C:\Users\user_account\AppData\Roaming\your_app_name\
使用以下方法检索:
System.Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData);
另见stackoverflow: Best place to store configuration files and log files on Windows for my program? 并stackoverflow: where to save application logs