对于直接输出服务器返回的json到Debug,发现他还包含json的结构,但是不想调试json的返回结构,可以使用简单地处理字符串的方法,而不引入额外的库或复杂的JSON解析,但是这个解决方式是暂时的是投机取巧的,正确的做法我会在下一条博客里面写出来。
可以考虑使用字符串操作方法直接从接收到的JSON字符串中提取需要的部分。这可以通过搜索特定的关键词或字符位置来实现,然后使用字符串切割方法如Substring
来提取您感兴趣的内容。
下面是一个使用字符串方法从JSON响应中提取response
字段内容的示例:
using UnityEngine;
public class SimpleJSONExtractor : MonoBehaviour
{
void Start()
{
string jsonResponse = "{\"response\": \"当然可以,山东大学软件园校区的教学楼设计现代化且设施齐全,它们是学生们学习和研究的重要场所。。\", \"status_code\": 200}";
string extractedResponse = ExtractResponse(jsonResponse);
Debug.Log(extractedResponse);
}
string ExtractResponse(string json)
{
string startKeyword = "\"response\": \"";
string endKeyword = "\", \"status_code\"";
int startIndex = json.IndexOf(startKeyword) + startKeyword.Length;
int endIndex = json.IndexOf(endKeyword, startIndex);
if (startIndex < 0 || endIndex < 0 || startIndex >= endIndex) {
return "Response content not found.";
}
string response = json.Substring(startIndex, endIndex - startIndex);
return response;
}
}
-
查找开始和结束关键词:这段代码中使用了
IndexOf
方法来定位"response": "
和后续的", "status_code"
标记。这两个标记定义了响应文本在JSON字符串中的开始和结束位置。 -
提取响应文本:通过计算这些位置,使用
Substring
方法来提取位于这两个标记之间的文本。 -
错误处理:如果找不到这些关键词,或者位置计算有误(比如开始位置大于结束位置),则返回一个错误消息。
这种方法的优点是它不需要任何外部库,且实现简单。然而,它也有缺点,特别是如果JSON格式发生了变化(如字段顺序变动或额外嵌套),这种方法可能就会失效。因此,在使用这种方法时,确保JSON格式相对固定且不太可能改变。
标签:string,JSON,json,软院,startIndex,实训,字符串,6.14,response From: https://blog.csdn.net/m0_63143408/article/details/139679917