2016-09-21 9 views
1

[Strings]をJSON Stringに変換します(スカラプログラミングを使用)。 例:[Strings]をJSON String scalaに変換します

data = Set(Client_1, Client_2, Client_3) 

Iは、以下のようにスカラ座を使用して変換するempty.Howを返し

val toString : String = new Gson().toJson(data) 

をしようとしていますか?

+1

Google検索へのグーグル*スカラーコレクションは、さまざまなツール、json4s、 json parserとspray-jsonを挙げることができます。 – sebszyller

+0

play、sparyのようなフレームワークを使用せずに変換することはできませんか? – Gopi

答えて

2

GsonはJava用のライブラリであり、Scala用ではありません。その後、Scalaのコレクションを正しく処理するとは限りません。代わりにScala用に作られたJSONフレームワークを使用することは、(他の人が示唆しているように)実際には意味をなさないかもしれません。

しかしあなたは、単にJavaのコレクションを取得し、このように、あなたのGsonインスタンスにそれを渡すためにJava conversionsを使用することができます。

import collection.JavaConverters.setAsJavaSetConverter 

val input: java.util.Set[String] = Set("foo", "bar", "baz").asJava 
val json: String = new Gson().toJson(input) // ["foo","bar","baz"] 

それとも、最初の場所でのJavaコレクションをインスタンス化します。

0

Gson/Fasterxmlは、スカラコレクションタイプを正しく処理できません。まず、Javaコレクションに変換してください。 scala.collection.JavaConversions.setAsJavaSet(data)を呼び出してJavaコレクションを取得し、gsonを使用してそれを変換することができます。

関連する問題