2017-01-25 2 views
-1

私は既に言いました、私の質問は異なっています...質問はすでにhereと尋ねられていますが、私はcheckgiven文字列がjson形式であるかどうかjavaの定義済みメソッドが必要です。文字列を検証する方法はJSONかJavaではありませんか?

何ら事前に定義された方法は、少なくともその後、存在しない場合から... ..のtry catchブロックを使用せずに、

+0

'try-catch'の何が問題なのですか? –

+1

これは[ここ](http://stackoverflow.com/a/10174938/2815219)のように 'try-catch'を使って簡単に行うことができます。 –

+1

[指定された文字列がJavaの有効なJSONであるかどうかをチェックする方法](http://stackoverflow.com/questions/10174898/how-to-check-whether-a-given-string-is-valid-json) -in-java) – Autar

答えて

1

使用JSONObjectのコンストラクタを事前に

感謝をJSON形式かどうかをチェックするコードを教えてあなたはそれを解析しようとすると、それが例外をスローかどうかを確認することができます文字列

try { 
     JSONObject o = new JSONObject(yourString); 
    } catch (JSONException e) { 
     LOGGER.error("No valid json"); 
    } 
+0

はありますか? try does catchブロックを使用していますか? –

+0

AFAIKこれがより良い方法です。ブロックを含むメソッドを作成して、いくつかのcatchを書くのを避けることができます。それはあなたの要求に従って受け入れられるでしょうか? – SCouto

+0

返事をありがとう。私はちょうどtry catchブロックを使用したくない。 JavaScriptのような私たちは、文字列を検証する事前定義された関数はjsonかどうかは.. ..だから私は自動的に有効なJSONをチェックするjavaの何かがあるかどうかは..私はブールjsIsValid =メソッド(文字列)をしたい; –

1

public boolean isValidJSON(String toTestStr) { 
try { 
    new JSONObject(toTestStr)); 
} catch (JSONException jsExcp) { 
    try { 
     new JSONArray(toTestStr)); 
    } catch (JSONException jsExcp1) { 
     return false; 
    } 
    } 
    return true; 
} 
関連する問題