【发布时间】:2017-02-06 04:21:11
【问题描述】:
我正在尝试做两件事。我想在我的项目中嵌入一个文本文件,以便我可以使用它并修改它,但同时我不想在将项目发送给用户时打包它(IE包含在exe文件中)。
我环顾四周,已经有多个问题,但我似乎无法解决任何问题。这是我到目前为止所采取的步骤;
将文本文件添加到我的“资源文件夹”
对“内容”构建操作并将目录输出到“请勿复制”
然后我尝试在我的代码中访问该文件;
if (File.Exists(Properties.Resources.company_map_template))
{
MessageBox.Show("Test");
var objReader = new StreamReader(Properties.Resources.company_map_template);
string line = "";
line = objReader.ReadToEnd();
objReader.Close();
line = line.Replace("[latlong]", latitude + ", " + longitude);
mapWebBrowser.NavigateToString(line);
}
MessageBox 从未出现,这对我来说意味着它无法找到该文件,并且不知何故我做错了什么。如何将文件添加到我的项目中,这样我就不需要使用 exe 进行分发,同时能够在代码中访问它?
【问题讨论】:
-
我认为问题是当你有一个嵌入文件时它并不完全相同,所以你不能使用
File.Exists检查它是否存在。如果您想读取嵌入文件,check this out。我不认为您将能够写入嵌入式文件,因为这实际上是在修改 EXE 文件。通常应该使用应用程序的 APP DATA 文件夹来处理这样的事情 -
@musefan 感谢您的建议,我会采纳的。
标签: c# wpf visual-studio embedded-resource