gpt4 book ai didi

c# - 资源文件放在哪里?

转载 作者:行者123 更新时间:2023-11-30 14:55:47 33 4
gpt4 key购买 nike

如果项目有这些目录

  MyProject
- bin
- Debug
- program.exe
- Release
- program.exe
- program.cs

将程序解析的 data.csv 文件放在哪里?我想把它放在与程序相同的文件夹中。我必须将它复制到 Debug 和 Release 目录吗?或者有更好的方法吗?


编辑我还需要将整个目录复制到输出目录,但 Visual Studio 没有此选项。我找到了答案 here .如果目录很大(就像我的情况一样),可以使用 /D xcopy 属性只复制较新的文件来解决。就我而言,我将此命令添加到构建后事件(项目-> 属性)并且效果很好:

xcopy "$(ProjectDir)\FolderToCopy" "$(TargetDir)\FolderToCopy" /D /E /I /Q /Y

( xcopy syntax )

最佳答案

您可以将它放在项目中您喜欢的任何位置(bin/obj 文件夹内除外)。为了将其复制到您的输出中,您只需将其标记为“复制到输出目录”:

  • 在项目中包含文件
  • 单击解决方案资源管理器中的文件
  • 点击 F4
  • 在属性窗口中,将“复制到输出目录”设置更改为“始终复制”或“更新时复制”中的任何一个

这将在您的项目 msbuild 文件(.csproj 文件)中列出文件,如下所示:

<None Include="data.csv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>

相对于:

<None Include="data.csv" />

如果您没有按照上面的说明更改设置。

正如我所附注的那样,您可能希望避免使用术语“资源”,因为它通常用于嵌入到程序集中的文件(例如 .resx 文件)。可以想象,您可以也对 data.csv 文件执行此操作:与其将其复制到输出目录,不如将其嵌入到程序集中。您需要访问 a different way though 中的文件.要实现这一点,只需将“构建操作”更改为“嵌入式资源”,而不是设置“复制到输出目录”设置。

关于c# - 资源文件放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24573363/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com