Я не могу получить доступ к файлу json в c# Xamarin - PullRequest
1 голос
/ 27 апреля 2020

Я уже назвал доступ «чтение / запись», чтобы все, включая меня, могли читать и писать в файл json. Однако код все еще отправляет исключение UnauthorizedAccessException . Это код:

public static void read_json(string path)
        {

            using (StreamReader r = new StreamReader("/Users/steve/Downloads/city_list.json"))
            {
                string json = r.ReadToEnd();
                List<City_Data> items = JsonConvert.DeserializeObject<List<City_Data>>(json);

                foreach (City_Data item in items)
                {
                    var key = item.name;
                    var value = item.id;
                    dict.Add(key, value);
                }
            }

        }

, хотя это часть файла json, к которому я хотел получить доступ и прочитать из:

[
  {
    "id": 833,
    "name": "Ḩeşār-e Sefīd",
    "state": "",
    "country": "IR",
    "coord": {
      "lon": 47.159401,
      "lat": 34.330502
    }
  },
...
]

1 Ответ

1 голос
/ 27 апреля 2020

Сделать все файлы доступными для записи при извлечении из системы контроля версий.

Перед преобразованием вызовите задачу Attrib MSBuild, чтобы удалить атрибут файла только для чтения. Например:

<Attrib Files="/Users/steve/Downloads/city_list.json" Normal="true"/>

Вызовите задачу Exe c MSBuild перед преобразованием, чтобы удалить атрибут файла только для чтения. Например:

<Exec Command="attrib -R &quot;/Users/steve/Downloads/city_list.json&quot;"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...