草庐IT

empty2null

全部标签

xml - 使用 JAXB 将空字符串解码为 null 的正确方法

我必须处理大型XML文档,这些文档通常会错误地处理缺失的属性数据。不是仅仅省略带有缺失数据的属性,而是用空字符串值指定该属性。这会在解码时导致问题,因为空字符串是一个值。例如,应该是什么是代替我正在努力想出一种“正确”的方式来优雅地处理这种格式不良的XML。目标是当属性的值为空字符串时将属性视为被省略,而空字符串永远不是该属性的有效值(例如整数)。我目前正在使用XMLAdapters将这些空字符串转换为null(如建议的inthispost),但这似乎是错误的解决方案。我正在处理的文档中的许多属性已经在使用从其他代码共享的类型适配器,而且似乎没有办法为一个属性指定多个XMLAdapte

c# - XML 序列化使用空数组而不是 NULL

我有属性(property)[XmlElement]publicstring[]Emails{get;set;}在构造函数中被初始化为string[0]。如果我对这个对象的默认实例进行XML序列化和反序列化,则该属性为NULL。我如何告诉XML序列化程序为此属性使用空数组而不是NULL? 最佳答案 5年后……:)用List替换Array对我有用。[XmlElement(IsNullable=false)]publicListEmails{get;set;} 关于c#-XML序列化使用空数

java - hibernate 持久性.xml : Disabling contextual LOB creation as connection was null

我的persistence.xml:org.hibernate.jpa.HibernatePersistenceProvidercom.ibm.apiscanner.DTO.BaselineDTO我看到了以下内容:Jan22,20159:16:48PMorg.hibernate.dialect.DialectINFO:HHH000400:Usingdialect:org.hibernate.dialect.DB2DialectJan22,20159:16:48PMorg.hibernate.engine.jdbc.internal.LobCreatorBuilderuseContext

C# Xml Serializer 将列表反序列化为 0 而不是 null

我很困惑XmlSerializer在幕后工作。我有一个将XML反序列化为对象的类。我看到的是以下两个不属于正在反序列化的Xml的元素。[XmlRootAttribute("MyClass",Namespace="",IsNullable=false)]publicclassMyClass{privatestringcomments;publicstringComments{set{comments=value;}get{returncomments;}}privateSystem.Collections.Generic.Listtests=null;publicSystem.Colle

Java xml 序列化 null 处理

我正在使用JAXB2将对象序列化为xml。有什么方法可以强制它像下面的示例一样创建整个对象结构,即使它没有填充到支持对象中也是如此?即使没有设置受让人属性,这也是我的预期结果。text我使用以下代码进行序列化:JAXBContextjc=JAXBContext.newInstance(dataObject.getClass());Marshallermarshaller=jc.createMarshaller();marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT,true);marshaller.setProperty(Ma

java - xmlbeans 上的 Getter 生成的类返回 null,它不应该

使用此简化的XSD(已简化,但仍然像所有XSD一样冗长):我生成了一个JAR文件(使用Anttaskfromxmlbeans),一切看起来都很棒,我得到了所有正确的类型等等。但是当我让它解析这个简化的文档时:bar使用这段代码:publicclassXmlTest{publicstaticvoidmain(String[]args)throwsException{FilexmlFile=newFile("./data/test.xml");FileInputStreamxmlStream=newFileInputStream(xmlFile);BILLINGSTATEMENTTYPET

java - 为什么 DOM 文档在实际有效时会显示为 null?

在我的一种方法中,我有一个DOMorg.w3c.dom.Document实例化,并且自从我转储它时似乎已正确初始化:LOG.info("DOM:"+doc.getDocumentElement().getTextContent());它输出应该存在的SOAP消息的有效和当前内容。但是之前(和之后)只有一条语句,它显示为null:LOG.info("docBEFORE="+doc);LOG.info("DOM:"+doc.getDocumentElement().getTextContent());LOG.info("docAFTER:="+doc);它们都显示null,中间是完全有效的

c# - 使用 Null 肥皂 WSDL

我需要在函数中指定一个可为空的参数。这不起作用: 最佳答案 参见w3.orgXMLSchema 关于c#-使用Null肥皂WSDL,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2540507/

sql-server - 在 SQL Server : how do I remove empty elements from nested elements when LEFT OUTER JOIN'ing 中使用 FOR XML AUTO 时

[编辑]:添加了RAW测试和更好的示例代码我需要为运行SQLServer2005的遗留应用程序生成XML,我希望使用FORXML函数。但是,当左外连接返回null时,我似乎无法摆脱空元素。我在下面创建了一些测试数据。我得到的结果(自动):我得到的结果(RAW):我想要的结果:测试代码:IFOBJECT_ID('tempdb..#name')ISNOTNULLBEGINDROPTABLE#nameENDSELECT*INTO#nameFROM(SELECT1id,'test1'NameUNIONALLSELECT2id,'test2'Name)tIFOBJECT_ID('tempdb..

c# - 如何将 XML 文件读取到 Dictionary<String,List<String>> 中,空字符串为 null 元素

我有一个像这样的xml文件:和像这样的字典:Dictionary>MyDict=newDictioanary>();我正在读取XML文件到MyDict就像:XDocumentXDoc=XDocument.Load(Application.StartupPath+@"\foo.xml");MyDict=XDoc.Descendants("RowDetails").ToDictionary(X=>X.Attribute("RowName").Value,X=>X.Descendants("ColumnDetails").Select(Y=>Y.Attribute("ColumnName")