xml中加pdf文件流

xml中加pdf文件流,第1张

XML可以用来储存和传递文件流,因为它可以提供一个统一的格式来描述复杂的数据结构,而PDF文件流可以用来储存大量信息,例如文本、图像、表格等。因此,通过将它们结合在一起,可以更好地传输和管理数据。

你可以用Base64编码。这是示例工程:

using System

using System.Collections.Generic

using System.Linq

using System.Text

using System.Xml

using System.IO

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

string tmpFileLocation = CreateRandomFile()

using (FileStream fs = new FileStream(tmpFileLocation, FileMode.Open))

{

Console.WriteLine("File:{0} Opened As FileStream.", tmpFileLocation)

XmlDocument xDoc = WriteFileStreamAsXml(fs)

ConsolePrintXmlDocument(xDoc)

string xmlLocation = Path.GetFullPath("output.xml")

SaveXmlDocumentAsFile(xDoc, xmlLocation)

Console.WriteLine("This Xml Document Saved as {0}.", xmlLocation)

}

Console.ReadLine()

}

private static XmlDocument WriteFileStreamAsXml(FileStream fs)

{

XmlDocument xDoc = new XmlDocument()

XmlElement xRoot = xDoc.CreateElement("FileStreamBase64")

using(MemoryStream ms=new MemoryStream())

{

fs.Position = 0

fs.CopyTo(ms)

string content= Convert.ToBase64String(ms.ToArray())//bytes->base64

XmlNode contentNode = xDoc.CreateTextNode(content)

xRoot.AppendChild(contentNode)

}

xDoc.AppendChild(xRoot)

return xDoc

}

private static void SaveXmlDocumentAsFile(XmlDocument xDoc, string location)

{

xDoc.Save(location)

}

private static string CreateRandomFile()

{

Random rnd = new Random()

byte[] buffer = new byte[1024]

rnd.NextBytes(buffer)

string tmpFileLocation = Path.GetTempFileName()

File.WriteAllBytes(tmpFileLocation,buffer)

return tmpFileLocation

}

private static void ConsolePrintXmlDocument(XmlDocument xDoc)

{

Console.WriteLine("Xml Document Begin:")

Console.WriteLine(xDoc.OuterXml)

Console.WriteLine("Xml Document End.")

}

}

}

分类: 电脑/网络 >> *** 作系统/系统故障

解析:

所谓的xml,就是eXtensible Markup Language, 翻译成中文就是“可扩展标识语言“,在国内很多人理解xml为的简单扩展,这实际上是一种误解。尽管xml同关系非常密切。

Xml 结合了sgml 和的优点并消除其缺点。Xml 仍然被认为是一种sgml语言。比sgml要简单,但能实现sgml的大部分的功能。1996年的夏天,Sun Microssystem的John Bosak开始开发W3C SGML工作组(现在称为xml工作组)。他们的目标是创建一种sgml,使其在Web中,既能利用Sgml的长处,又保留的简单性。现在目标基本达到。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7958135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存