カスタムバイナリファイルをC#クラスライブラリに埋め込み、実行時にバイナリリーダで読み込むことはできますか?クラスライブラリ内にバイナリファイルを埋め込む
私はそれがリソースを通して可能性があると推測しています。
感謝
カスタムバイナリファイルをC#クラスライブラリに埋め込み、実行時にバイナリリーダで読み込むことはできますか?クラスライブラリ内にバイナリファイルを埋め込む
私はそれがリソースを通して可能性があると推測しています。
感謝
これは、プロジェクトプロパティを使用してリソースにファイルを追加することで実行できます。 Visual Studioは、次のコードを使用してファイルにアクセスする便利なクラスを提供します。
byte[] theFile = myNamespace.Properties.Resources.theBinaryFile;
ここで、リソース名はBinaryFileです。
はい、それは簡単です:
は、プロジェクトにファイルを追加し、「埋め込まれたリソース」を「アクションの構築」に設定します。あなたのプログラムで
はものは、ファイル名の前に存在するために)...(場合にブレークポイントを設定し、名前空間など(右資源少し複雑さを見つける
foreach (string name in Assembly.GetExecutingAssembly().GetManifestResourceNames())
{
if (name.EndsWith("<name>", StringComparison.InvariantCultureIgnoreCase))
{
using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name))
{
// ...
}
break;
}
}
を行います実際のリソース名を参照してください)。
RE:以下の回答に対する私のコメント。元のファイルが変更された場合は、次にプロジェクトをビルドするときに自動的に再埋め込みされますか? – Andy
はいファイルを変更すると、次のビルドがリソースファイルを更新します。 –
あなたの助けに感謝ジョン。 – Andy