您的位置:首页 > 编程语言 > C#

C# Vs2005资源文件嵌入资源使用方法

2008-05-27 10:17 495 查看
C# Vs2005资源文件嵌入资源使用方法

1、嵌入资源

首先,我们来看一个简单的示例,了解如何实现嵌入。假设要在基于 Windows® 窗体的应用程序中嵌入一个名为1.jpg 的图形图像。首先,要将该文件添加到 Visual Studio® 项目中。然后,在该文件的属性表中,将生成方式设置为嵌入的资源,如图 1 所示。这样,就指示 Visual Studio 将该文件嵌入输出程序集 .exe 文件的物理图像了。

一旦将某个文件作为资源嵌入,就必须了解如何在运行时访问它。请参见以下代码片段,它先获得对当前程序集对象的引用,然后调用 GetManifestResourceStream 方法以获得对嵌入的资源文件基于流的访问。该代码假定导入了 System.Reflection 和 System.IO 命名空间:
2、调用方式:
private void button4_Click(object sender, EventArgs e)
{
Assembly asm = Assembly.GetExecutingAssembly();
string ResourceName = "OracleToAccess.1.jpg";
Stream pStream = asm.GetManifestResourceStream(ResourceName);
//'*** convert stream into image and load in '*** picture box
Image img = Image.FromStream(pStream);
pictureBox1.Image = img;
}
3、文本文件
如果为文本文件sqlfnc.txt,

调用如下:
public string getStrByResFileName(string ResourceName)
{
Assembly asm = Assembly.GetExecutingAssembly();
Stream pStream = asm.GetManifestResourceStream(ResourceName);
string str = "";
StreamReader m_streamReader = new StreamReader(pStream, System.Text.Encoding.GetEncoding("GB2312"));//中文乱码加上System.Text.Encoding.Default,或则System.Text.Encoding.GetEncoding("GB2312")
//使用StreamReader类来读取文件
m_streamReader.BaseStream.Seek(0, SeekOrigin.Begin);
// 从数据流中读取每一行,直到文件的最后一行,并在richTextBox1中显示出内容

string strLine = m_streamReader.ReadLine();
while (strLine != null)
{
str += strLine + "/n";
strLine = m_streamReader.ReadLine();
}
//关闭此StreamReader对象
m_streamReader.Close();

return str;
}
private void button4_Click(object sender, EventArgs e)
{
MessageBox.Show(getStrByResFileName("OracleToAccess.sqlfnc.txt"));

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: