通过.NET框架下的FromBase64String和ToBase64String方法可以很容易地实现图象文件和XML文件的互换。这样可以轻易解决以XML格式保存图片的问题。以下是利用VB.NET实现图象文件和XML文件的互换代码:

10多年的林周网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整林周建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“林周网站设计”,“林周网站推广”以来,每个客户项目都认真落实执行。
- Public Class Form1
 - Inherits System.Windows.Forms.Form
 - #Region " Windows 窗体设计器生成的代码 "
 - Public Sub New()
 - MyBase.New()
 - InitializeComponent()
 - 在 InitializeComponent() 调用之后添加任何初始化
 - End Sub
 - 窗体重写处置以清理组件列表。
 - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
 - If disposing Then
 - If Not (components Is Nothing) Then
 - components.Dispose()
 - End If
 - End If
 - MyBase.Dispose(disposing)
 - End Sub
 - Windows 窗体设计器所必需的
 - Private components As System.ComponentModel.IContainer
 - 注意:以下过程是 Windows 窗体设计器所必需的
 - 可以使用 Windows 窗体设计器修改此过程。
 - 不要使用代码编辑器修改它。
 - Friend WithEvents Button1 As System.Windows.Forms.Button
 - Friend WithEvents Button2 As System.Windows.Forms.Button
 - Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
 - Friend WithEvents Button3 As System.Windows.Forms.Button
 - Friend WithEvents Label1 As System.Windows.Forms.Label
 - Friend WithEvents Label2 As System.Windows.Forms.Label
 Private Sub InitializeComponent() - Me.Button1 = New System.Windows.Forms.Button()
 - Me.Button2 = New System.Windows.Forms.Button()
 - Me.PictureBox1 = New System.Windows.Forms.PictureBox()
 - Me.Button3 = New System.Windows.Forms.Button()
 - Me.Label1 = New System.Windows.Forms.Label()
 - Me.Label2 = New System.Windows.Forms.Label()
 - Me.SuspendLayout()
 - Button1
 - Me.Button1.Location = New System.Drawing.Point(365, 63)
 - Me.Button1.Name = "Button1"
 - Me.Button1.Size = New System.Drawing.Size(115, 23)
 - Me.Button1.TabIndex = 0
 - Me.Button1.Text = "将图象保存成XML"
 - Button2
 - Me.Button2.Location = New System.Drawing.Point(365, 98)
 - Me.Button2.Name = "Button2"
 - Me.Button2.Size = New System.Drawing.Size(115, 23)
 - Me.Button2.TabIndex = 1
 - Me.Button2.Text = "从XML中得到图象"
 - PictureBox1
 - Me.PictureBox1.Location = New System.Drawing.Point(18, 6)
 - Me.PictureBox1.Name = "PictureBox1"
 - Me.PictureBox1.Size = New System.Drawing.Size(320, 460)
 - Me.PictureBox1.TabIndex = 2
 - Me.PictureBox1.TabStop = False
 - Button3
 - Me.Button3.Location = New System.Drawing.Point(365, 28)
 - Me.Button3.Name = "Button3"
 - Me.Button3.Size = New System.Drawing.Size(115, 23)
 - Me.Button3.TabIndex = 3
 - Me.Button3.Text = "浏览图片…"
 - Label1
 - Me.Label1.Location = New System.Drawing.Point(369, 135)
 - Me.Label1.Name = "Label1"
 - Me.Label1.Size = New System.Drawing.Size(105, 95)
 - Me.Label1.TabIndex = 4
 - Label2
 - Me.Label2.Location = New System.Drawing.Point(367, 437)
 - Me.Label2.Name = "Label2"
 - Me.Label2.Size = New System.Drawing.Size(130, 16)
 - Me.Label2.TabIndex = 5
 - Me.Label2.Text = "【孟宪会之精彩世界】"
 - Form1
 - Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
 - Me.ClientSize = New System.Drawing.Size(500, 480)
 - Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.Label2, Me.Label1, Me.Button3, Me.PictureBox1, Me.Button2, Me.Button1})
 - Me.Name = "Form1"
 - Me.Text = "图象文件和XML格式文件互换例子"
 - Me.ResumeLayout(False)
 - End Sub
 - #End Region
 - Private MyFile As String = ""
 - Private MyFileExt As String = ""
 - Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
 - Handles Button2.Click
 - Dim pic As String
 - Dim MyXml As System.Xml.XmlDocument = New System.Xml.XmlDocument()
 - MyXml.Load("c:\MyPhoto.xml")
 - Dim picNode As System.Xml.XmlNode
 - picNode = MyXml.SelectSingleNode("/pic/photo")
 - pic = picNode.InnerText
 - Dim memoryStream As System.IO.MemoryStream
 - memoryStream = New System.IO.MemoryStream(Convert.FromBase64String(pic))
 - Me.PictureBox1.Image = New System.Drawing.Bitmap(memoryStream)
 - memoryStream.Close()
 - End Sub
 - Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
 - Handles Button1.Click
 - If MyFile = "" Then
 - MessageBox.Show("请选择一个图片!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Warning)
 - Exit Sub
 - End If
 - Dim MyImg As System.Drawing.Image = MyImg.FromFile(MyFile)
 - Dim memoryStream As System.IO.MemoryStream = New System.IO.MemoryStream()
 - MyImg.Save(memoryStream, GetImageType(MyFileExt))
 - Dim b() As Byte
 - b = memoryStream.GetBuffer()
 - Dim pic As String = Convert.ToBase64String(b)
 - memoryStream.Close()
 - Dim MyXml As System.Xml.XmlDocument = New System.Xml.XmlDocument()
 - MyXml.LoadXml("
 ") 孟宪会 " + pic + " - MyXml.Save("c:\MyPhoto.xml")
 - Label1.Text = "文件被保存到了:" + Microsoft.VisualBasic.ChrW(13) + "c:\MyPhoto.xml"
 - End Sub
 - Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
 - Handles Button3.Click
 - Dim openFileDialog1 As New OpenFileDialog()
 - openFileDialog1.InitialDirectory = "c:\"
 - openFileDialog1.Filter = "PNG(*.png)|*.png|Gif(*.gif)|*.gif|Jpg(*.jpg)|*.jpg|所有图象文件(*.*)|*.*"
 - openFileDialog1.FilterIndex = 2
 - openFileDialog1.RestoreDirectory = True
 - If openFileDialog1.ShowDialog() = DialogResult.OK Then
 - MyFile = openFileDialog1.FileName()
 - MyFileExt = MyFile.Substring(MyFile.LastIndexOf(".") + 1)
 - End If
 - End Sub
 - Public Function GetImageType(ByVal str As String) As System.Drawing.Imaging.ImageFormat
 - Select Case str.ToLower()
 - Case "jpg"
 - Return System.Drawing.Imaging.ImageFormat.Jpeg
 - Case "gif"
 - Return System.Drawing.Imaging.ImageFormat.Gif
 - Case "tiff"
 - Return System.Drawing.Imaging.ImageFormat.Tiff()
 - Case "icon"
 - Return System.Drawing.Imaging.ImageFormat.Icon
 - Case "image/png"
 - Return System.Drawing.Imaging.ImageFormat.Png
 - Case Else
 - Return System.Drawing.Imaging.ImageFormat.MemoryBmp
 - End Select
 - End Function
 - Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) _
 - Handles MyBase.Closing
 - System.Diagnostics.Process.Start("IExplore.exe", "http://xml.sz.luohuedu.net/")
 - End Sub
 - End Class
 
                分享文章:VB.NET实现图象文件和XML文件互换
                
                标题来源:http://www.csdahua.cn/qtweb/news11/197461.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网