1. ホーム
  2. スプリングブート

不正な引用符なしの文字((CTRL-CHAR, コード 9)):含めるにはバックスラッシュでエスケープする必要がある i

2022-03-01 22:48:05
<パス

不正な引用符なしの文字 ((CTRL-CHAR, コード 9)): 文字列値に含めるにはバックスラッシュでエスケープする必要があります。

jsonを変換する際にこのエラーが発生することがありますが、回避方法は以下の通りです。
例えば

{
	"id":100,
	"name":"zhngsan",
	"note":{
		"aaa":11,
		"bbb":22
	}
}


jsonobjectに変換する際、noteフィールドがオブジェクトであれば、このようなjsonリクエストで問題ありません。
しかし、ノート・フィールドがString型の場合、変換例外というエラーが報告され、ノートの値をエスケープする必要があります。

{
	"id":100,
	"name":"zhngsan",
	"note":"{
	\"aaa\": 11,
	\"bbb\": 22
	}"
}


この形式に変換すると、時々エラーも報告されます。noteの値がjsonではなくなり、Stringになったので、すべてのスペースとその間の改行を削除して、次の形式に変更する必要があります。

{
	"id":100,
	"name":"zhngsan",
	"note":"{\"aaa\": 11,\"bbb\": 22}"
}