草庐IT

xml - 如何解码 Spray 中的案例类列表

第一次使用Spray的用户无法在任何地方找到任何合适的示例。我正在寻找解码包含List[Person]的XMLAPI响应。说caseclassPerson(name:String,age:Int)。解码器应生成适当的List[Person]。Spray有一个默认的NodeSeqUnmarshaller但我不知道如何正确地链接事物,将不胜感激任何指点。 最佳答案 我必须在我的应用程序中解决这个问题。以下是一些基于您的示例案例类的代码,您可能会发现它们对您有所帮助。我的方法使用Unmarshaller.delegate作为讨论here.

xml - Scala:给定一个 scala.xml.Node,获取第二个(或第 n 个)子元素的最有效方法是什么?

给定一个scala.xml.Node对象(带有空格和元素作为子节点)获取第二个(或第n个)子元素的最有效方法是什么?通常我会选择内置的(node\"foo"),但有时我不得不依赖元素的位置。例如,我可以有两个Choice组,它们可以是foo或bar。该文档可以是或等等 最佳答案 我喜欢retronym的drop(n).headOption当你的child少于n时,它会考虑这种模式.但我认为你的意思是第二个子节点(不包括文本节点),而不是的第二个实例。标签。考虑到这一点,结合您的答案或使用partialMap:node.child.p

xml - Jerkson 让 Scala JSON 变得如此简单,XML 也能一样吗?

诚然,我真的很喜欢Jerkson库,因为它使生成JSON变得如此简单。举个例子:Json(generate(Job.search(parseDate(date),accountId).map(job=>Map("id"->job.id,"name"->job.name,"userId"->job.userId.getOrElse("")))))但我很难找到一个类似的库,它可以像这样轻松地生成和序列化XML节点等。是否有Java或Scala库可以用简单的语法生成节点和值,而无需制作"template"或手动编写节点? 最佳答案 由于属

xml - 在 Scala 中查找 XML 元素的第一个子元素

因此,我正在开发一个可以接收多种类型的XML请求的项目。请求的类型由根标记的第一个子标记确定。所以你可以得到这样的东西:foo或:foo并对foo执行一定的操作,基于是否是的第一个child是或.我想不出任何简单的方法来确定.我想我可以做重复匹配,首先检查a\'b'然后a\'c'等等。但是我需要处理一堆不同的请求类型,所以这很快就会变得笨拙。Elem.child没有帮助,它只返回一个单元素列表:元素本身。如何在事先不知道标签名称的情况下获取元素的第一个子元素? 最佳答案 我想你可以尝试这样的事情:valfirstChildName=

xml - Scala XML 中的选项 [Elem]

vali=Some(){for(o返回奇怪的值:res3:scala.xml.Elem=Some(<foo/>)显然不是预期的结果。我可以通过写来绕过:{for(o返回预期结果:但是为什么我需要做这个转换呢?有什么我应该将i转换为而不是将其转换为List的特征吗? 最佳答案 因为Option.map(这是您的理解使用的)返回另一个Option,并且没有从Option的隐式转换到Seq或类似的(原因值得商榷并且已经过辩论)。虽然Option有许多类似集合的方法,但它实际上并没有实现任何主要的集合特征,因此XML系统不知道将

xml - 如何使用 Scala 计算 XML 文件中的元素

我在scala中使用assert函数来比较xml文件。我的问题是我希望能够计算元素的数量,例如:我希望能够计算keydown元素、keydown元素、按键等的数量... 最佳答案 将你的录音标签做成一个Seq[Node],并计算每个标签:scala>:paste//Enteringpastemode(ctrl-Dtofinish)valxml=//numberofemptyentriesforwhateverreason.//Notnecessaryifyou'renotusingchildrenagainafterthis.val

xml - Scala 2.8.0中如何将二维数组写入xml

以下代码(从aquestionfromaboutayearago复制)在Scala2.7.7下运行良好,但在Scala2.8.0(Beta1、RC8)下运行不正常。importscala.xmlclassPerson(name:String,age:Int){deftoXml():xml.Elem={name}{age}}defpeopleToXml(people:Array[Person]):xml.Elem={{for{person}valdata=Array(newPerson("joe",40),newPerson("mary",35))println(peopleToXml(

xml - 在 Scala 中解析不带引号的 XML

我正在尝试使用如下所示的Scala解析一些生成不良的xml代码:The...它结构良好,但如您所见,任何属性值周围都没有引号。简单地用下面的Scala片段打开文件会抛出一个并不令人惊讶的错误:valsemCor=XML.loadFile(args(0))抛出org.xml.sax.SAXParseException:Openquoteisexpectedforattribute"{1}"associatedwithanelementtype"concordance".我想知道如何(如果可能的话)设置scalaxml解析器以正确解析此输入,就好像属性值周围有引号一样。感谢您的任何建议!

xml - Scala 在大(30MB)xml 文件中查找元素

我有一个30MB的大XML文件,想在其中找到几个元素。该文件是一个有效的pom.xml,我想从中获取所有依赖项(名称、组、版本)、子模块和父模块。您可以使用查看这样的文件mvnhelp:effective-pom-Doutput=test.xml对于我的26MB文件,scala的XML.load*导致java.lang.OutOfMemoryError:Javaheapspace除了增加堆空间,我还能做什么?TIA,baSTL. 最佳答案 您可以使用pullparsing,其中XML元素被视为一系列事件(打开标记a、打开标记i、文本

xml - {name}在属性中没有被替换,如何处理?

测试代码为:vals="#"valx={s}println(x)它打印:#注意{s}仍然存在于属性中,如何修复它? 最佳答案 vals="#"valx={s}println(x)注意没有引号!打印:# 关于xml-{name}在属性中没有被替换,如何处理?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5030100/