| OVERVIEW | PACKAGE | CONSTR | FIELDS | METHODS | FRAMES NO FRAMES | INHERITED |
def this
|
| !=.. |
final def !=(arg0 : Any)
|
Boolean | Any |
| !=.. |
final def !=(arg0 : Object)
|
Boolean | AnyRef |
| ==.. |
final def ==(arg0 : Object)
|
Boolean | AnyRef |
| ==.. |
final def ==(arg0 : Any)
|
Boolean | Any |
| asInstanceOf.. |
final def asInstanceOf[T0]
|
T0 | Any |
| clone.. |
protected def clone
|
Object | AnyRef |
| eq.. |
final def eq(arg0 : Object)
|
Boolean | AnyRef |
| equals.. |
def equals(arg0 : Any)
|
Boolean | AnyRef |
| finalize.. |
protected def finalize
|
Unit | AnyRef |
| getClass.. |
final def getClass
|
Class[Any] | AnyRef |
| hashCode.. |
def hashCode
|
Int | AnyRef |
| isInstanceOf.. |
final def isInstanceOf[T0]
|
Boolean | Any |
| ne.. |
final def ne(arg0 : Object)
|
Boolean | AnyRef |
| notify.. |
final def notify
|
Unit | AnyRef |
| notifyAll.. |
final def notifyAll
|
Unit | AnyRef |
| synchronized.. |
final def synchronized[T0](arg0 : T0)
|
T0 | AnyRef |
| toJson.. |
def toJson(xml : NodeSeq)
Convert given XML to JSON
[details]
Following rules are used in conversion.
Example:
scala> val xml =
<users>
<user>
<id>1</id>
<name>Harry</name>
</user>
<user>
<id>2</id>
<name>David</name>
</user>
</users>
scala> val json = toJson(xml)
scala> pretty(render(json))
{
"users":{
"user":[{
"id":"1",
"name":"Harry"
},{
"id":"2",
"name":"David"
}]
}
}
Now, the above example has two problems. First, the id is converted to String while
we might want it as an Int. This is easy to fix by mapping JString(s) to JInt(s.toInt).
The second problem is more subtle. The conversion function decides to use JSON array
because there's more than one user-element in XML. Therefore a structurally equivalent
XML document which happens to have just one user-element will generate a JSON document
without JSON array. This is rarely a desired outcome. These both problems can be fixed
by following map function.
json map {
case JField("id", JString(s)) => JField("id", JInt(s.toInt))
case JField("user", x: JObject) => JField("user", JArray(x :: Nil))
case x => x
}
|
JValue | |
| toString.. |
def toString
|
String | AnyRef |
| toXml.. |
def toXml(json : JValue)
Convert given JSON to XML
[details]
Following rules are used in conversion.
Use
toXml(json map {
case JField("nums",JArray(ns)) => JField("nums",JString(ns.map(_.values).mkString(",")))
case x => x
})
|
NodeSeq | |
| wait.. |
final def wait
|
Unit | AnyRef |
| wait.. |
final def wait(arg0 : Long)
|
Unit | AnyRef |
| wait.. |
final def wait(arg0 : Long, arg1 : Int)
|
Unit | AnyRef |
| OVERVIEW | PACKAGE | CONSTR | FIELDS | METHODS | FRAMES NO FRAMES | INHERITED |