选择图片 串行化保存,然后再将其读取到image实例
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
// 定义私有变量。
// 输出文件流对象。
public Stream s;
// 串行化对象。
public BinaryFormatter f;
// 串行化对象输出。
private void button1_Click(object sender, System.EventArgs e)
{
if(pictureBox1.Image != null)
{
saveFileDialog1.Filter = "自定义文件(*.ser)|*.ser";
if(saveFileDialog1.ShowDialog() == DialogResult.OK)
{
s = File.Create(saveFileDialog1.FileName);
f = new BinaryFormatter();
// 存储图形文件和对应的文件名。
f.Serialize(s, pictureBox1.Image);
f.Serialize(s, textBox1.Text);
s.Close();
}
}
}
// 串行化对象输入。
private void button2_Click(object sender, System.EventArgs e)
{
openFileDialog1.Filter = "自定义文件(*.ser)|*.ser";
if(openFileDialog1.ShowDialog() == DialogResult.OK)
{
s = File.OpenRead(openFileDialog1.FileName);
f = new BinaryFormatter();
pictureBox1.Image = (Image)f.Deserialize(s);
textBox1.Text = (string)f.Deserialize(s);
s.Close();
}
}
// 选择要存储的图形文件。
private void button3_Click(object sender, System.EventArgs e)
{
openFileDialog1.Filter = "图形文件(*.bmp;*.jpg;*.jpeg;*.gif)|*.bmp;*.jpg;*.jpeg;*.gif";
if(openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox1.Image = Image.FromFile(openFileDialog1.FileName);
textBox1.Text = openFileDialog1.FileName;
}
}
资源文件列表
╢╘╧≤┤«╨╨╗»/App.ico , 1078
╢╘╧≤┤«╨╨╗»/AssemblyInfo.cs , 1846
╢╘╧≤┤«╨╨╗»/bin/Debug/doc1.ser , 921898
╢╘╧≤┤«╨╨╗»/bin/Debug/Serialization.exe , 9728
╢╘╧≤┤«╨╨╗»/bin/Debug/Serialization.pdb , 15872
╢╘╧≤┤«╨╨╗»/bin/Debug/test.bmp , 921656
╢╘╧≤┤«╨╨╗»/Form1.cs , 6547
╢╘╧≤┤«╨╨╗»/Form1.resx , 5704
╢╘╧≤┤«╨╨╗»/obj/Debug/Serialization.exe , 9728
╢╘╧≤┤«╨╨╗»/obj/Debug/Serialization.exe.incr , 1646
╢╘╧≤┤«╨╨╗»/obj/Debug/Serialization.Form1.resources , 868
╢╘╧≤┤«╨╨╗»/obj/Debug/Serialization.pdb , 15872
╢╘╧≤┤«╨╨╗»/obj/Debug/Serialization.projdata , 5896
╢╘╧≤┤«╨╨╗»/Serialization.csproj , 4379
╢╘╧≤┤«╨╨╗»/Serialization.csproj.user , 1772
╢╘╧≤┤«╨╨╗»/Serialization.sln , 922
╢╘╧≤┤«╨╨╗»/Serialization.suo , 7168
