Задать вопрос
@JoJikRe

Как читать много данных Json?

Я сохраняю много данных в json.

json файл выглдяит так:
{"arrow":-5.0,"pos":2.0,"speed":1,"section":0,"empty":""}{"arrow":-4.0,"pos":1.0,"speed":1,"section":0,"empty":""}{"arrow":-3.0,"pos":1.0,"speed":1,"section":0,"empty":""}{"arrow":-2.0,"pos":0.0,"speed":1,"section":0,"empty":""}

Если читать файл с помощью ReadAllText то выходит ошибка. Я если читать другими способами то он выводит просто что
храниться в файле.

Мне надо все эти значение занести в массив.

Мой код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using System.Net;
 
public class SaveToJson : MonoBehaviour
{
    public SaveData data = new SaveData();
 
    private SaveData _data = new SaveData();
 
    private string path;
 
    public int ac, pc, spc, sc;
 
    void Awake()
    {
        path = Application.streamingAssetsPath + "/file.json";
    }
 
    private void Start()
    {
 
 
        
    }
 
    public void Save(float arrow, float pos, int speed, int section)
    {
        ac++;
        pc++;
        spc++;
        sc++;
 
        data.arrow = arrow;
 
        data.pos = pos;
 
        data.speed = speed;
 
        data.section = section;
 
        File.AppendAllText(path, JsonUtility.ToJson(data));
    }
 
    public float GetArrow()
    {
        _data = JsonUtility.FromJson<SaveData>(File.ReadAllText(path));
 
        return _data.arrow;
    }
 
    public float GetPos()
    {
        _data = JsonUtility.FromJson<SaveData>(File.ReadAllText(path));
 
        return _data.pos;
    }
 
    public void Delete()
    {
        File.WriteAllText(path, data.empty);
    }
 
    [System.Serializable]
    public class SaveData
    {
        public float arrow;
 
        public float pos;
 
        public int speed;
 
        public int section;
 
        public string empty;
    }
}
  • Вопрос задан
  • 183 просмотра
Подписаться 1 Средний 6 комментариев
Пригласить эксперта
Ответы на вопрос 2
tentrun
@tentrun
Fullstack (asp.net /react, vue, angular) deletant
Циклом перебрать пробовал?
Ответ написан
Griboks
@Griboks Куратор тега C#
Сохраняйте данные не в файл, а в переменную.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы