草庐IT

scala-ide

全部标签

java - 在 Java 中使用 RELAX NG 模式验证 xml 文件(IDE - Eclipse)

我一直在尝试根据名为bookNewRelax.rnc的.rnc文件验证名为bookNew.xml的xml文件。我经常遇到的错误是——线程“main”中的异常java.lang.IllegalArgumentException:没有实现指定模式语言的SchemaFactory:http://relaxng.org/ns/structure/1.0可以加载在javax.xml.validation.SchemaFactory.newInstance(未知来源)在testRelax.main(testRelax.java:38)为了避免这种情况,我在实例化SchemaFactory类的对象之

xml - 使用 Scala 提取具有特定子元素内容的 XML 元素

对于这样的XML片段:valfruits=appleredbananayellowbananagreenapplegreen做类似的事情:fruits\\"fruit"将返回一个scala.xml.NodeSeq类型的序列,其中包含所有水果和子节点。我怎样才能限制这个序列只包含里面有“香蕉”的水果元素。即,我希望结果是:bananayellowbananagreen 最佳答案 (fruits\\"fruit").filter(x=>//filterthesequenceoffruits(x\\"name")//findnamenod

xml - 简单的 Scala XML 解析

我有一个XML文件,其中包含如下所示的数百条消息,表示汽车在检查站的通过时间。我是Scala的新手,但是根据我一直在阅读的内容,有一种简单的方法(即,几行代码)来解析它并将其存储到Car对象属性中,例如ID(“数字”在rat:st标签中)和检查点列表(“pbpData”行,每行由一个节点ID和两个时间变量标识)。此外,您是否认为有一种方法可以将这些时间以YYYY-MM-DDThh:mm:ss格式保存,并将Scala作为Date属性?我四处寻找,但只找到了tutorial对于更改Java中的日期/时间格式,这只是真正解释了如何更改日期的显示方式,而我希望做相反的事情:将这个有趣的日期/时

xml - 带空格的 Scala XML 模式

xml是否有匹配以下模式的值?xmlmatch{case{x}=>42} 最佳答案 是的。scala>valx=33x:Int=33scala>valxml={x}xml:scala.xml.Elem=33scala>xmlmatch{case{x}=>42}res0:Int=42我认为您的困惑来自于它与33不匹配scala>33match{case{x}=>42}scala.MatchError:33(ofclassscala.xml.Elem)这是因为当你使用{},scala为{}前后的空格插入额外的元素,所以你得到三个元素,而

XML 解析性能 Scala

我在Scala中使用XML,在具有有限内存资源的系统中解析可以达到~20MB的文件。我必须读取整个文件,并且必须从中提取所有数据。更具体地说,我必须读取的节点具有有限的属性和值。我想知道在性能方面最好的方法是什么(或者两者是否具有相同的性能)。我问这个是因为我不知道Scala如何处理它的XML库,而且我可能会遗漏一些细节。第一种方法deffirstApproach(root:Elem)=for{nif(node\"@attr").text=="type1"=>//dosomething//hereotherpossiblecases->type2,type3}第二种方法defsecon

xml - 如何创建一个从标准输入读取的 Scala XMLEventReader?

我希望能够将XML文件通过管道传输到程序中,并使用XMLEventReader读取它。我能为XMLEventReader找到的唯一构造函数将Source作为参数,但scala.io.StdIn不是Source而且我找不到任何方法将它变成Source。可以做到吗?如果可以,怎么做? 最佳答案 您可以使用java.lang.System.in作为InputStream或scala.Console.in作为BufferedReader。更喜欢后者,因为它可以在测试中轻松修改(使用Console.withIn)。importjavax.xm

xml - Scala 解析器组合器解析 xml?

scala的解析器组合器能否解析xml并验证结束标记是否与开始标记同名?我并不直接需要它,但我想知道我的库的限制。 最佳答案 是的,它可以做到这一点。使用into或>>>(实际上是同一回事)根据已解析的值对后一个解析器进行参数化。 关于xml-Scala解析器组合器解析xml?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5271010/

xml - scala.xml.PrettyPrinter 在没有文本时格式化较短的节点

我使用scala.xml.PrettyPrinter在Scala中格式化我的XML。问题在于没有文本内容的节点。而不是这个:我更喜欢这个:我怎样才能使PrettyPrinter以我的方式格式化它? 最佳答案 这是scala-xml中的一个错误,但已在2018年2月20日的1.1.0版中修复。新选项minimizeEmpty已添加到PrettyPrinter.要使用1.1.0,请将以下内容添加到您的build.sbt:libraryDependencies++=Seq("org.scala-lang.modules"%%"scala-

xml - 关于查找具有与 Scala 特定值匹配的属性的所有节点

我看到之前在这里讨论的以下示例,其目标是返回包含id为X且包含值Y的属性的所有节点://findallnodeswithanattribute"class"thatcontainsthevalue"test"valxml=XML.loadString("""hellohello""")defattributeEquals(name:String,value:String)(node:Node)={node.attribute(name).filter(_==value).isDefined}valtestResults=(xml\\"_").filter(attributeEquals

xml - 如何使用 scala Elem 生成 jersey text/xml?

我已经编写了一个通用方法来通过scala.xml库生成Elem类型。但是Jersey使用JAXB,意味着将xml信息与Java对象绑定(bind)。我怎么能简单地响应scala的Elem类型避免构造对象?简单代码为:@GET@Path("sitemap.xml")@Produces(Array(MediaType.APPLICATION_XML))defsitemap(@Contextclient:DaoService[Future])={valx:Elem=Common.defaultXml()x} 最佳答案 您将需要一个自定义的