是否可以在 C# 类库中嵌入自定义二进制文件,然后在运行时使用二进制阅读器读取它?
我猜这可能是通过资源实现的。
非常感谢
您可以通过项目属性将文件添加到资源中来做到这一点。然后,Visual Studio 将为您提供一个方便的类来使用以下代码访问您的文件
byte[] theFile = myNamespace.Properties.Resources.theBinaryFile;
其中资源名称是二进制文件。
是的,这很容易:
将文件添加到您的项目中并将“构建操作”设置为“嵌入式资源”。
在你的程序中做
foreach (string name in Assembly.GetExecutingAssembly().GetManifestResourceNames())
{
if (name.EndsWith("<name>", StringComparison.InvariantCultureIgnoreCase))
{
using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name))
{
// ...
}
break;
}
}
找到正确的资源有点复杂,因为文件名前面有一些东西(命名空间等。在 if(...) 设置断点以查看真实的资源名称)。