Tag: xml

扩展类时出现错误膨胀

我正在尝试创build一个扩展SurfaceView的自定义视图GhostSurfaceCameraView 。 这是我的类定义文件 GhostSurfaceCameraView.java : public class GhostSurfaceCameraView extends SurfaceView implements SurfaceHolder.Callback { SurfaceHolder mHolder; Camera mCamera; GhostSurfaceCameraView(Context context) { super(context); // Install a SurfaceHolder.Callback so we get notified when the // underlying surface is created and destroyed. mHolder = getHolder(); mHolder.addCallback(this); mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); } public void surfaceCreated(SurfaceHolder holder) { // The Surface has been created, […]

序列化一个对象到string

我有以下方法将一个对象保存到一个文件: // Save an object out to the disk public static void SerializeObject<T>(this T toSerialize, String filename) { XmlSerializer xmlSerializer = new XmlSerializer(toSerialize.GetType()); TextWriter textWriter = new StreamWriter(filename); xmlSerializer.Serialize(textWriter, toSerialize); textWriter.Close(); } 我承认我没有写(我只将它转换为一个扩展方法,采取了一个types参数)。 现在我需要它把xml作为一个string给我(而不是保存到一个文件)。 我正在研究它,但我还没有弄明白。 我认为这对于熟悉这些对象的人来说可能非常容易。 如果不是,我会最终弄清楚。

如何从XmlDocument中selectXML命名空间的XML节点?

我的代码尝试从网站的RSS提要中获取数据。 它抓取的节点很好,但是当试图用冒号从一个节点获取数据时,它会崩溃,并给出错误“名称空间pipe理器或XsltContext需要,这个查询有一个前缀,variables或用户定义的函数。 代码如下所示: WebRequest request = WebRequest.Create("http://buypoe.com/external.php?type=RSS2&lastpost=true"); WebResponse response = request.GetResponse(); StringBuilder sb = new StringBuilder(""); System.IO.StreamReader rssStream = new System.IO.StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("utf-8")); XmlDocument rssDoc = new XmlDocument(); rssDoc.Load(rssStream); XmlNodeList rssItems = rssDoc.SelectNodes("rss/channel/item"); for (int i = 0; i < 5; i++) { XmlNode rssDetail; rssDetail = rssItems.Item(i).SelectSingleNode("dc:creator"); if (rssDetail != null) { user = rssDetail.InnerText; […]

从XML文档获取指定的节点值

我遇到了一个XML文档(使用C#)的问题,并获得所有必要的值。 我成功通过XML文档中的所有指定的XmlNodeLists,成功获取所有的XmlNode值,但是我必须得到这个XmlNodeList之外的一些值。 例如: <?xml version="1.0" encoding="UTF-8" ?> <Element xsi:schemaLocation="http://localhost/AML/CaseInvestigationMangement/Moduli/XmlImportControls/xsdBorrow.xsd xsd2009027_kor21.xsd" Kod="370" xmlns="http://localhost/AML/CaseInvestigationMangement/Moduli/XmlImportControls/xsdBorrow.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> /2001/XMLSchema-instance"> <ANode> <BNode> <CNode> <Example> <Name>John</Name> <NO>001</NO> </Example> </CNode> </BNode> <ID>1234</ID> <Date>2011-10-01</Date> </ANode> <ANode> <BNode> <CNode> <Example> <Name>Mike</Name> <NO>002</NO> </Example> </CNode> </BNode> <ID>5678</ID> <Date>2011-03-31</Date> </ANode> </Element> 这是在XML文档中的每个find的节点上获取节点Name和NO值的代码: XmlDocument xml = new XmlDocument(); xml.LoadXml(myXmlString); //myXmlString is the xml file in string //copying xml […]

如何控制.NET DataContract序列化,以便使用XML属性而不是元素?

如果我有一个标记为DataContract的类和一些标记有DataMember属性的属性,我可以很容易地将它序列化为XML,但它会创build如下输出: <Person> <Name>John Smith</Name> <Email>john.smith@acme.com</Email> <Phone>123-123-1234</Phone> </Person> 我更喜欢的是属性,比如… <Person Name="John Smith" Email="john.smith@acme.com" Phone="123-123-1234" /> DataMember属性允许我控制名称和顺序,但不能将其序列化为元素还是属性。 我环顾四周,发现DataContractFormat和IXmlSerializable但我希望有一个更简单的解决scheme。 什么是最简单的方法来做到这一点?

你可以指定一个date时间的XmlSerialization的格式?

我需要序列化/反序列化为XML文件的yyyyMMdd格式的date时间。 有一个属性/解决方法,我可以使用这个?

如何更改XML属性

如何使用C#更改XML文件中某个元素的属性?

如何从styles.xml以编程方式检索样式属性

目前,我正在使用WebView或TextView来显示一些来自我的应用程序中的web服务的dynamic数据。 如果数据包含纯文本,则使用TextView并应用styles.xml中的样式。 如果数据包含HTML(主要是文本和图像),则使用WebView。 但是,这个WebView是无风格的。 因此,它看起来与通常的TextView有很大的不同。 我读过,可以通过简单地将一些HTML直接插入到数据中来在WebView中设置文本的样式。 这听起来很容易,但我想使用Styles.xml中的数据作为这个HTML所需的值,所以如果我改变了我的样式,我不需要改变两个位置的颜色等等。 那么,我将如何能够做到这一点? 我已经做了一些广泛的search,但是我没有find从styles.xml实际检索不同风格属性的方法。 我在这里错过了什么,或者真的不可能检索这些值? 我试图从中获取数据的风格如下: <style name="font4"> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:textSize">14sp</item> <item name="android:textColor">#E3691B</item> <item name="android:paddingLeft">5dp</item> <item name="android:paddingRight">10dp</item> <item name="android:layout_marginTop">10dp</item> <item name="android:textStyle">bold</item> </style> 我主要对textSize和textColor感兴趣。

不区分大小写xpath contains()可能吗?

我正在运行DOM的所有文本节点,并检查nodeValue是否包含某个string。 /html/body//text()[contains(.,'test')] 这是区分大小写的。 但是,我也想抓住Test , TEST或TesT 。 这是可能的XPath(在JavaScript中)?

如何防止.NET的XmlDocument的输出中的空白xmlns属性?

当从.NET中的XmlDocument生成XML时,第一次插入一个没有关联名称空间的元素时会出现一个空的xmlns属性; 这怎么能防止? 例: XmlDocument xml = new XmlDocument(); xml.AppendChild(xml.CreateElement("root", "whatever:name-space-1.0")); xml.DocumentElement.AppendChild(xml.CreateElement("loner")); Console.WriteLine(xml.OuterXml); 输出: <root xmlns="whatever:name-space-1.0"><loner xmlns="" /></root> 期望的输出: <root xmlns="whatever:name-space-1.0"><loner /></root> 是否有适用于XmlDocument代码的解决scheme,而不是在将文档转换为使用OuterXml的string之后发生的OuterXml ? 我这样做的理由是看我是否可以使用XmlDocument生成的XML匹配特定协议的标准XML。 空白的xmlns属性可能不会破坏或混淆parsing器,但它也没有出现在我看到这个协议的任何用法。