之前在處理遊戲資料儲存時,使用到Json的功能,由於我的需求很簡單,因此找到一個叫做MiniJson的插件,有人分享在Github。
但使用時一直有錯誤訊息,找不到解決辦法,只好自己研究:
錯誤點在
char PeekChar
這個方法,裡面的
Convert.ToChar(json.Peek());
這個指令。解析到最後一個char時,他會回傳-1,表示沒有了,但這就是錯誤的原因。因為-1不能轉換成char。但是方法
TOKEN NextToken
接收到
char c = PeekChar;
是一個-1,下面的switch也沒處理。所以我挑了一個不是NextToken有處理的char去代替-1回傳,因此改寫方法PeekChar:
char PeekChar {
get {
if (json.Peek() == -1) {
return 'a';
}else
return Convert.ToChar(json.Peek());
}
}
這樣他回傳一個a,他就知道結束了。這樣修改完就能使用了。
但使用時一直有錯誤訊息,找不到解決辦法,只好自己研究:
錯誤點在
char PeekChar
這個方法,裡面的
Convert.ToChar(json.Peek());
這個指令。解析到最後一個char時,他會回傳-1,表示沒有了,但這就是錯誤的原因。因為-1不能轉換成char。但是方法
TOKEN NextToken
接收到
char c = PeekChar;
是一個-1,下面的switch也沒處理。所以我挑了一個不是NextToken有處理的char去代替-1回傳,因此改寫方法PeekChar:
char PeekChar {
get {
if (json.Peek() == -1) {
return 'a';
}else
return Convert.ToChar(json.Peek());
}
}
這樣他回傳一個a,他就知道結束了。這樣修改完就能使用了。
留言
張貼留言