我的WPF项目中有一个名为资源的目录,我在该目录中有一个 Settings.json 。 我想阅读该文件中的内容。 在文件设置中,我有构建操作 - >嵌入式资源和复制到输出目录 - >始终复制 我读了这样的文件:
using (StreamReader r = new StreamReader(@"/Resources/Settings.json"))
我得到以下例外:
{“无法找到路径'C:\ Resources \ Settings.json'的一部分。”}
如何让它读取该目录中的文件?感谢
答案 0 :(得分:8)
using (StreamReader r = new StreamReader(Application.StartupPath + @"/Resources/Settings.json"))
答案 1 :(得分:5)
由于您已将Build Action设置为Embedded Resource,因此您可能希望使用Assembly.GetManifestResourceStream方法。
例如:
using (Stream stream = assembly.GetManifestResourceStream("MyCompany.Namespace.Settings.json"))
using (StreamReader reader = new StreamReader(stream))
答案 2 :(得分:3)
Directory.GetCurrentDirectory();
答案 3 :(得分:0)
对于 .Net Core 项目,将这些行添加到您的 .csproj
文件中:
<ItemGroup>
<Content Include="Resources\**\*">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>