Получить файл байтов из файла ресурсов в C # - PullRequest
4 голосов
/ 10 ноября 2009

Я использовал для хранения ресурсов в реальном проекте, но я переключился на использование файла ресурсов вместо Первоначально я мог подготовить байты для файла, но мне трудно делать это с файлом ресурсов. Любые предложения будут с благодарностью.

Ответы [ 2 ]

11 голосов
/ 10 ноября 2009
public static byte[] ReadResource(string resourceName)
{
    using (Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName))
    {
        byte[] buffer = new byte[1024];
        using (MemoryStream ms = new MemoryStream())
        {
            while (true)
            {
                int read = s.Read(buffer, 0, buffer.Length);
                if (read <= 0)
                    return ms.ToArray();
                ms.Write(buffer, 0, read);
            }
        }
    }
}
1 голос
/ 31 марта 2011

Или добавьте это в свой класс ресурсов

internal static byte[] GetResource(string fileName) { 
    object obj = ResourceManager.GetObject(fileName, resourceCulture); 
    return ((byte[])(obj)); 
}
...