```
package main
import (
"encoding/json"
"fmt"
)
type Block struct {
? ? Type ? ?string `json:"type"`//除非json中的key也是大寫,否則即使名稱一樣也無法轉換
? ? Title string `json:"title"`
? ? Icon ? ?string `json:"icon"`
? ? Piclist []string `json:"piclist"`
}
func main() {
? ? str := `{
? ? ? ? "type": "showPics",
? ? ? ? "title": "校歷",
? ? ? ? "icon": "/assets/images/index/calender.png",
? ? ? ? "piclist": [?"http://jwb.xujc.com/\_upload/article/images/93/d5/56c5a1924d0eba890083b77d4247/be6363d8-a8a6-4846-a605-237b289f0c31.jpg"
? ? ? ? ]
? ? }`
? ? var block Block
? ? err := json.Unmarshal(\[\]byte(str), &block)
? ? if err != nil {
? ? ? ? fmt.Printf("反序列化失敗:%v\\n", err)
? ? ? ? return
? ? }
? ? fmt.Println(block)
}
```
- 數據類型
- 數組array
- 切片slice
- 字符串string
- map
- 結構體struct
- 方法func
- 匿名結構體(繼承)
- 字段別名
- 接口interface
- 常量
- 基礎語法
- 循環for
- 遍歷
- 函數func
- defer
- 異常處理error
- 訪問范圍
- 包
- 類型斷言
- 文件
- 打開文件
- 讀取文件
- 寫文件
- 判斷是否存在
- 拷貝文件
- JSON
- 序列化
- 反序列化
- 命令行
- 雜項
- Windows下配置加速
- 相關鏈接
- 占位符
- 隨機數rand
- 單元測試
- goroutine
- 并發和并行
- 協程和主線程
- MPG模式
- 設置CPU數量
- 全局互斥鎖
- 管道
- 示例1
- 示例2
- select
- 異常捕獲
- 反射
- 示例
- 示例-改變值
- 網絡編程
- TCP編程
- 示例一
- redis