Tôi đang lưu trữ một loạt các dữ liệu trong một file plist (trong thư mục tài liệu ứng dụng), và nó có cấu trúc như thế này:Cách tốt nhất để lưu trữ và truy xuất NSMutableArrays đa chiều là gì?
Dictionary {
"description" = "String Value",
"sections" = Array (
Array (
Number,
...
Number
),
Array (
Number,
...
Number
)
),
"items" = Array (
Array (
Number,
...
Number
),
Array (
Number,
...
Number
)
)
}
Nếu tôi chỉ lấy nó với
NSMutableDictionary *d = [[NSMutableDictionary alloc] initWithContentsOfFile:plistFile]
tôi sẽ không có thể thay thế các đối tượng số, đúng không? Vì vậy, tôi đang đệ quy thông qua dữ liệu ngay bây giờ và tạo thành một phiên bản có thể thay đổi được, và nó hoạt động trong một trường hợp, nhưng bây giờ nó nói với tôi mutating method sent to immutable object
khi toàn bộ điều có thể thay đổi được.
Có cách nào dễ hơn/tốt hơn để thực hiện việc này không? Nếu nó tạo sự khác biệt, dữ liệu của tôi chỉ là số nguyên và boolean.
Bạn có thể cung cấp cho chúng tôi thêm một chút thông tin như đối tượng đang được gửi phương pháp này hay không và có thể đăng mã bạn sử dụng để tạo phiên bản mới và lỗi thời gian chạy được tạo bởi? –
Bạn cũng có tạo bản sao có thể thay đổi của mảng trước khi bắt đầu chỉnh sửa các giá trị không? – vfn