XML保存图像(其他?)文件

工程中引用System.Runtime.Serialization.Formatters.Soap

 

    using namespace System::IO;
    using namespace System::Runtime::Serialization::Formatters::Soap;

//SoapFormatter类  以 SOAP 格式将对象或整个连接对象的图形序列化和反序列化。


      //保存为XML文件
private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
             String^ FileName;
             FileStream^ OutFileStream;
             if(this->pictureBox1->Image == nullptr)
                 return;
             if(this->saveFileDialog1->ShowDialog() != System::Windows::Forms::DialogResult::OK)
                 return;
             try{
                
                 FileName = this->saveFileDialog1->FileName;
                 OutFileStream = gcnew FileStream(FileName, FileMode::Create, FileAccess::Write, FileShare::None);
                 SoapFormatter^ MySoap = gcnew SoapFormatter();
                 MySoap->Serialize(OutFileStream, this->pictureBox1->Image);
                 OutFileStream->Close();
                 this->pictureBox1->Image = nullptr;
                 MessageBox::Show("success", "", MessageBoxButtons::OK, MessageBoxIcon::Information);
             }
             catch(Exception^ eee){
                 MessageBox::Show(eee->Message, "", MessageBoxButtons::OK, MessageBoxIcon::Information);
             }
         }


         //显示XML图像文件

private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) {
             if(this->openFileDialog2->ShowDialog() != System::Windows::Forms::DialogResult::OK)
                 return;

             String^ FileName;
             Stream^ MyStream;
             SoapFormatter^ MySoap;

             try{
                 FileName = this->openFileDialog2->FileName;
                 MyStream = gcnew FileStream(FileName, FileMode::Open, FileAccess::Read, FileShare::None);
                 MySoap = gcnew SoapFormatter();
                 this->pictureBox1->Image = (Bitmap^)(MySoap->Deserialize(MyStream));
                 MyStream->Close();
             }
             catch(Exception^ eee){
                 MessageBox::Show(eee->Message, "", MessageBoxButtons::OK, MessageBoxIcon::Information);
             }
         }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值