- Phát triển data.frame theo cách hiệu quả về bộ nhớ
- phát hiện rò rỉ bộ nhớ ruby/ruby on rails
- Không thể giải quyết việc nhập android.support.v7.app
- Ổ cắm miền UNIX và bộ nhớ chia sẻ (tệp được ánh xạ)
Tôi muốn chuyển đổi từ chuỗi sang đối tượng.
Từ
{"key1": "{\n \"key2\": \"value2\",\n \"key3\": {\n \"key4\": \"value4\"\n }\n}\n"}
Đưa cho
{"key1": {"key2": "giá trị2", "key3": {"key4": "giá trị4"}}}
Cuối cùng, tôi muốngiá trị4
.
Tôi có thể lấy giá trị của "key1" bằng cách sử dụng tập lệnh bên dưới.
jsondata := `{"key1": "{\n \"key2\": \"value2\",\n \"key3\": {\n \"key4\": \"value4\"\n }\n}\n"}`
var m map[string]giao diện{}
json.Unmarshal([]byte(jsondata), &m)
giá trị := m["key1"]
fmt.Println(giá trị)
https://play.golang.org/p/4lwgQJfp5S
Nhưng tôi không thể chuyển đổi giá trị thành một đối tượng. Vậy nên tôi không thể lấy được "giá trị 4". Có phương pháp nào cho việc này không? Tôi có thể lấy nó thông qua biểu thức chính quy https://play.golang.org/p/6TB-qNAdgQNhưng đây không phải là giải pháp của tôi hiện tại.
Cảm ơn bạn rất nhiều vì đã dành thời gian và đóng góp ý kiến. Tôi xin lỗi vì câu hỏi thiếu chín chắn của mình.
1 Câu trả lời
Có hai cấp độ mã hóa JSON. Bước đầu tiên là giải mã giá trị JSON bên ngoài. Giải mã thành cấu trúc phù hợp với cấu trúc JSON.
var outer struct{Key1 chuỗi }
nếu err := json.Unmarshal([]byte(jsondata), &outer); err != nil {
log.Fatal(err)
}
Bước tiếp theo là giải mã giá trị JSON bên trong. Một lần nữa, giải mã thành cấu trúc phù hợp với cấu trúc JSON.
var inner struct{ Key3 struct{ Key4 chuỗi } }
nếu err := json.Unmarshal([]byte(outer.Key1), &inner); err != nil {
log.Fatal(err)
}
// Giá trị là inner.Key3.Key4
Nếu JSON không được mã hóa kép, bạn có thể giải mã nó cùng một lúc:
jsondata := `{"key1": { "key2": "giá trị2", "key3": { "key4": "giá trị4" }}}`
var v cấu trúc {
Key1 struct{ Key3 struct{ Key4 chuỗi } }
}
nếu err := json.Unmarshal([]byte(jsondata), &v); err != nil {
log.Fatal(err)
}
// giá trị là v.Key1.Key3.Key4
Về json - Phân tích cú pháp JSON từ giá trị chuỗi JSON, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/47046475/
Gần đây tôi mới bắt đầu học MongoDB. Hôm nay giáo viên dạy chúng tôi lệnh mongoexport. Trong khi thực hành, tôi đã gặp phải một vấn đề điển hình mà không có học viên nào khác, kể cả huấn luyện viên, từng gặp phải. Tôi đang sử dụng Mongo trên máy Windows 10 của mình
Tôi mới tìm hiểu về JSON Schema và đã đọc bài JSON Schema là gì cùng nhiều bài viết khác. Nhưng tôi không biết cách liên kết JSON Schema với JSON để xác thực với JSON Schema đó. Có ai có thể giải thích được điều này không?
Trong xml, tôi có thể đưa một tệp vào một tệp xml khác và sử dụng tệp đó. Nếu phần mềm của bạn lấy các tệp cấu hình từ xml nhưng không có cách nào để tách cấu hình, như apache/ngnix (nginx.conf - site-av
Tôi có một đối tượng JSON chứa một chuỗi, bản thân chuỗi này cũng là một đối tượng JSON. Tôi có thể hủy tuần tự hóa nó như thế nào? Tôi muốn có thể làm điều gì đó như thế này: #[derive(Deserialize)] struct B { c: S
Hãy xem xét JSON sau { "a": "{\"b\": 12, \"c\": \"test\"}" } Tôi muốn định nghĩa một Reader Reads[Outer[T]] chung cho lệnh nhập Json được tuần tự hóa này
đóng cửa. Câu hỏi này không đáp ứng được hướng dẫn của Stack Overflow. Hiện tại câu hỏi này không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Cập nhật câu hỏi để nó phù hợp với chủ đề của Stack Overflow. Đã đóng 11 tháng trước. Cải thiện
Dự án cũ của tôi có dữ liệu ở định dạng JSON chuẩn trong MySQL. Đối với dự án hoàn toàn mới của tôi trong JS (Node.js) và DynamoDB, liên quan đến định dạng JSON chuẩn: Có nên chuyển đổi nó thành
Chuỗi giá trị JSON, số, đúng, sai, null có phải là JSON hợp lệ không? Nghĩa là, liệu đây có thực sự là một tài liệu JSON hợp lệ không? Hay nó phải là một mảng/đối tượng? Một số trình xác thực chấp nhận điều này (ví dụ: http://jso
Tôi có một chuỗi JSON và một trong các trường là trường văn bản. Trường văn bản này có thể chứa văn bản mà người dùng nhập vào UI và nếu văn bản họ nhập là văn bản JSON, có lẽ để tính đến một số mã hóa, tôi cần mã hóa văn bản của họ để nó không
Tôi đang xử lý dữ liệu thông qua lệnh gọi IBM MQ và khi được tuần tự hóa bằng ColdFusion 10 (10,0,11,285437), 0 được trả về là +0.0, dẫn đến JSON không hợp lệ và không thể hủy tuần tự hóa. stPol
Tôi đang tạo một hàm băm từ ba mảng và sau đó cố gắng xây dựng một tệp json. Tôi đã thành công với đối tượng json có mảng. yêu cầu 'json' A = [['A1', 'A2', 'A3'],
Tôi nhận được JSON từ API và phản hồi có thể là một trong 30 loại. Mỗi loại có một tập hợp các trường riêng, nhưng tất cả các phản hồi đều có một loại trường cho biết đó là loại nào. Cách tiếp cận của tôi là sử dụng serde. Tôi tạo một cấu trúc cho mỗi loại phản hồi và
Tôi đang tải xuống tệp JSON mà tôi đã kiểm tra là JSON hợp lệ với "https://jsonlint.com" vào thư mục tài liệu. Sau đó tôi mở tệp và kiểm tra lại thì thấy tệp đó là JSON không hợp lệ. Làm sao điều này có thể xảy ra được? ? ? ? Đây là
Tôi đang cố gắng tạo động một đối tượng JSON dựa trên dữ liệu nhận được từ API. Dữ liệu mẫu đã nhận: Giải mã dữ liệu thành cấu trúc CiItems được đưa ra bên dưới { "class_name": "test", "
Tôi muốn chuyển đổi từ chuỗi sang đối tượng. Từ {"key1": "{\n \"key2\": \"value2\",\n \"key3\": {\n \"key4\": \"value4\"\n }\n
Hiện tại tôi đang sử dụng mã sau để chuyển đổi json lồng nhau thành json phẳng: import ( "fmt" "github.com/nytlabs/gojsonexplode" ) func
Tôi có một ứng dụng sử dụng dữ liệu từ API của bên thứ ba. Tôi cần giải mã json thành một struct, yêu cầu struct phải có thẻ json cho trường json "đến". Các trường json gửi đi có quy ước đặt tên khác nhau nên tôi cần các quy ước khác nhau
Tôi muốn sử dụng JSON Schema để xác thực một số giá trị. Tôi có hai đối tượng, gọi chúng là trackedItems và trackedItemGroups. trackedItemGroups là tên nhóm và trackedItem
Hãy xem xét lược đồ lớp trường hợp sau, lớp trường hợp Y (a: Chuỗi, b: Chuỗi) lớp trường hợp X (giả: Chuỗi, b: Y) Trường b là tùy chọn và một số tập dữ liệu của tôi không có trường.
Tôi đang lưu trữ đầu ra của lệnh cat ~/path/to/file/blah | jq tojson trong một biến để sử dụng sau này trong curl POST với nội dung JSON. Nó hoạt động tốt, nhưng nó xóa hết các ngắt dòng. Tôi biết
Tôi là một lập trình viên xuất sắc, rất giỏi!