在解决方案c#

时间:2015-11-25 22:27:54

标签: c# wpf file resources

我需要将一组20个txt文件保存到我的解决方案中,以便将它们包含在exe文件中。通过这种方式,我将只能向最终用户发送可执行文件和其他任何内容。

我需要使用以下功能:

File.Copy( sourcePath, @path + "\\FileName.txt");

将20个文件中的一个复制到另一个目录中(根据用户的请求)。为了将20个txt文件包含到解决方案中,我在解决方案资源管理器中创建了一个新文件夹,然后将其放入其中。然后我选择了#34;资源"进入单个txt文件的选项。假设文件夹的名称是FOO,文件是NAME01,那么我假设单个txt文件的本地地址是" \ FOO \ NAME01.txt"。但这不起作用,我从与SourcePath相关的File.Copy函数中得到了一个恐怖。

你有什么建议吗?我已经堆积在这个问题上,我在网上找不到任何解决方案。非常感谢!

1 个答案:

答案 0 :(得分:2)

第1步:将文件添加到项目中

enter image description here

第2步:使它们成为嵌入式资源

enter image description here

步骤3:在运行时将它们导出到文件系统:

using System.Reflection;

namespace ConsoleApplication1
{
    class Program4
    {
        public static void Main(string[] args)
        {
            using(var stream = Assembly.GetExecutingAssembly()
                .GetManifestResourceStream("ConsoleApplication1.Files.TextFile1.txt"))
            using (var filestream = System.IO.File.OpenWrite("target.txt"))
            {
                stream.CopyTo(filestream);
                filestream.Flush();
                filestream.Close();
                stream.Close();
            }
        }
    }
}
  • " ConsoleApplication1.Files.TextFile1.txt"来自:
    • ConsoleApplication1:包含文件的项目的默认命名空间
    • Files.TextFile1.txt:相对路径,点缀,在dll内(look @ screenshot 1)