C# 从内嵌资源读取文件内容并写入到指定位置

        String filePath = "test.txt";
        System.Reflection.Assembly app = System.Reflection.Assembly.GetExecutingAssembly();
        Stream fsOpen = app.GetManifestResourceStream("ResourcesFileRead.fileContent.txt");
        FileStream fsSave = new FileStream(filePath, FileMode.Create);
        StreamReader sr = new StreamReader(fsOpen);
        StreamWriter sw = new StreamWriter(fsSave);
        long lenth = sr.BaseStream.Length;
        int i = 0;
        char[] bytes = new char[256];
        while (!sr.EndOfStream)
        {
            i = sr.Read(bytes, 0, 256);
            sw.Write(bytes, 0, i);
        }
        sw.Flush();
        sw.Close();
        sr.Close();
        fsSave.Close();
        fsOpen.Close();
要释放内嵌资源文件到指定位置,你可以使用以下步骤: 1. 确保你的资源文件已经嵌入到了程序集中。可以在 Visual Studio 中的资源文件管理器中确认。 2. 使用 `Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)` 方法获取嵌入资源的流。其中 `resourceName` 是你的资源文件的完整名称,包括命名空间和文件名。 3. 创建一个新的文件流,指定你想要将资源文件释放到的位置。 4. 通过将嵌入资源的流复制到新的文件流中,将资源文件释放到指定位置。你可以使用 `Stream.CopyTo()` 方法来实现这一点。 下面是一个示例代码,展示了如何释放内嵌资源文件到指定位置: ```csharp using System; using System.IO; using System.Reflection; public class ResourceManager { public static void ExtractResourceToFile(string resourceName, string targetPath) { using (Stream resourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)) { if (resourceStream == null) { throw new ArgumentException($"Resource '{resourceName}' not found."); } using (FileStream fileStream = File.Create(targetPath)) { resourceStream.CopyTo(fileStream); } } } } ``` 你可以调用 `ResourceManager.ExtractResourceToFile(resourceName, targetPath)` 方法,将资源文件释放到指定位置。其中 `resourceName` 是嵌入资源的完整名称,`targetPath` 是要释放到的目标位置的文件路径。 希望这能帮助到你!如果有任何问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值