草庐IT

scala-android

全部标签

xml - 如何安全地处理 Scala 中的 unicode 用户输入(尤其是 XML 实体)

在我的网站上,我有一个接受一些文本用户输入的表单。对于“普通”角色,一切都很好。然而,当输入unicode字符时……好吧,情节变浓了。用户输入类似やっぱ死にかけてる这作为包含XML实体引用的文本进入服务器やっぱ死にかけてる?现在,当我想用​​HTML将其返回给客户端时,我该怎么做?如果我只是按原样输出字符串,脚本攻击就有可能发生。如果我尝试使用scala.xml.Text对其进行编码,它会转换为:やっ&a

xml - 如何使用 Scala 创建 xhtml 查询字符串?

如何创建一个包含href属性的x(ht)ml节点,其中包含查询字符串而不自动转义&s或运行时错误?valtext=Text("?key=val&key2=val2")将被转义和valnode=link抛出(在Scala2.7.5中):java.lang.AssertionError节点将与Liftbind()辅助方法一起使用,最好与AttrBindParam()一起使用。 最佳答案 尝试:valtext=scala.xml.Unparsed("link?key=val&key2=val2")valnode=link但也许你的意思是:

使用 Scala : Equivalent to "getElementByTagName(name)" in JS 解析 XML

Scala中的XML解析似乎并不像它应该的那样简单和直接。我需要的是类似于JavaScript中的document.getElementsByTagName(name)的行为,但出于我的目的,我需要的只是特定标记名称的第一个元素。这是我最终得到的结果:importscala.xml.{Document,Elem,Node}importscala.xml.parsing.ConstructingParserdef_getFirstMatchingElementByName(search:String,n:Node):Option[Node]={if(n.label==search){So

xml - Android Studio XML 上的 RTL 预览

IsitpossibletopreviewtheRTLviewforlayoutsinXMLPreviewonAndroidStudio? 最佳答案 对于预览,您可以使用android:layoutDirection="rtl"设置您的xml父View例如,项目.xml//designandroid:layoutDirection="rtl"输出: 关于xml-AndroidStudioXML上的RTL预览,我们在StackOverflow上找到一个类似的问题:

java - Android Studio 2.2.3 : Gradle project sync failed. 基本功能(如编辑、调试)无法正常使用

我需要预装笔记本电脑并切换到Windows10。在此之前,我在AndroidStudio2.2.3中制作并保存了我的项目,并在预安装后下载了相同版本的AndroidStudio,但是当我选择打开现有项目时,我收到以下消息:Failedtosyncgradleproject'ApplicationName'Error:Unabletofindmethod'org.gradle.api.artifacts.Configuration.setExtendsFrom(Ljava/lang/Iterable;)Lorg/gradle/api/artifacts/Configuration;'.P

xml - 用scala以编程方式替换xml值

我正在编写一个工具来使用scala更新一些xml文件(在本例中为pom.xml),因为它在java中所花费的精力明显高于(理论上)在scala中的花费。我可以很好地解析xml文件,但我需要替换现有xml中的节点并重写结果。例如:foobar1.0-SNAPSHOT所以我想找到所有这样的节点并将它们替换为:foobar1.0所以,我可以很简单地获取所有版本节点,但是如何将它们替换为我想要的节点呢?//documentisalreadydefinedastheheadofthexmlfilenodes=for(node然后我想做这样的事情:for(node这不起作用,因为节点是不可变的。我

xml - 我可以使用 Scala 的内置 xml 处理程序忽略无效的 XML 字符吗?

我有一个xml文件(来自联邦政府的data.gov),我试图用scala的xml处理程序读取它。valloadnode=scala.xml.XML.loadFile(filename)显然,存在无效的xml字符。是否可以选择忽略无效字符?还是我唯一的选择是先清理它?org.xml.sax.SAXParseException:AninvalidXMLcharacter(Unicode:0x12)wasfoundintheelementcontentofthedocument.Ruby的nokogiri能够用无效字符解析它。 最佳答案

xml - Scala:合并 xml 数据树?

我很好奇组合一组包含类似的xml树的最佳方法数据到单个集合(“联合”样式)。我确实实现了一个可行的解决方案,但代码看起来很糟糕,我有一种强烈的直觉,认为必须有一种更好、更紧凑的方式实现这一点。我想做的是在最简单的情况下结合以下内容:和:收件人:关于如何在scala中干净地实现它有什么好的想法吗? 最佳答案 与valappleAndOrange:Elem=和valbanana:Elem=你可以做到valall=appleAndOrange.copy(child=appleAndOrange.child++banana.child)但是

xml - 这是 scala.xml.Elem 中的错误吗?

将一个Set[String]映射到Set[Elem]的属性对一个属性可以正常工作,但是当多个属性共享其中一个时似乎会失败:scala>vals1=Set("A","B","C")s1:scala.collection.immutable.Set[java.lang.String]=Set(A,B,C)scala>s1.map((a:String)=>{})res3:scala.collection.immutable.Set[scala.xml.Elem]=Set(,,)scala>s1.map((a:String)=>{})res4:scala.collection.immutabl

xml - Scala 集合类型之间的隐式转换

我想在ScalaXMLElem对象和XML元素的另一种表示之间进行隐式转换,在我的例子中是dom4j元素。我写了以下隐式转换:implicitdefelemToElement(e:Elem):Element=...doconversionhere...implicitdefelementToElem(e:Element):Elem=...doconversionhere...到目前为止一切顺利,这有效。现在我还需要上述元素的集合来进行双向转换。首先,我是否绝对需要编写额外的转换方法?如果我不这样做,事情似乎就不会奏效。我试着写了以下内容:implicitdefelemTToElemen