我正在尝试使用Newtonsoft JSON
反序列化JSON
array
。然而,使用从服务器接收的string
,我得到了以下错误:
Newtonsoft JSON, JsonReaderException: After parsing a value an unexpected character was encountered
如果我在反序列化中对string
进行硬编码,那么它工作得很好。
这是原始JSON
。从服务器接收的字符串与打印到控制台时的硬编码字符串相同。
{"id":15,"username":"patrick"}
和代码反序列化它
JsonConvert.DeserializeObject<User>(jsonstring);
我怀疑这与编码有关。
我做错了什么?
按请求分类的用户
using UnityEngine;
using System.Collections;
using Newtonsoft.Json;
[JsonObject(MemberSerialization.OptOut)]
public class User{
[JsonProperty]
private int id;
[JsonProperty]
private string username;
public User (int setId, string setName){
id = setId;
username = setName;
}
public string GetUsername(){
return username;
}
}
那么,您试图反序列化的字符串是什么?我使用了以下代码,没有遇到任何问题:
public static void Main()
{
const string jsonString = "{ "id":15, "username":"patrick" }";
User u = JsonConvert.DeserializeObject<User>(jsonString);
}