判断字符串是JSONObject还是JSONArray

2025-05-16 23:42:40
推荐回答(1个)
回答(1):

/// 
/// 判断字符串是JSONObject还是JSONArray 
/// 

public enum JSON_TYPE
{
/**JSONObject*/
JSON_TYPE_OBJECT,
/**JSONArray*/
JSON_TYPE_ARRAY,
/**不是JSON格式的字符串*/
JSON_TYPE_ERROR
}

/***

* 获取JSON类型
* 判断规则
* 判断第一个字母是否为{或[ 如果都不是则不是一个JSON格式的文本
*         
* @param str
* @return
*/
private JSON_TYPE getJSONType(string str)
{
    if (string.IsNullOrEmpty(str))
    {
        return JSON_TYPE.JSON_TYPE_ERROR;
    }

    char[] strChar = str.Substring(0, 1).ToCharArray();
    char firstChar = strChar[0];

    if (firstChar == '{')
    {
        return JSON_TYPE.JSON_TYPE_OBJECT;
    }
    else if (firstChar == '[')
    {
        return JSON_TYPE.JSON_TYPE_ARRAY;
    }
    else
    {
        return JSON_TYPE.JSON_TYPE_ERROR;
    }
}