Как читать в текстовом файле в XNA 4 для Windows Phone 7? - PullRequest
2 голосов
/ 19 сентября 2010

Я посмотрел на этот предыдущий вопрос, но, похоже, он не работает для XNA 4 для проекта Windows Phone 7: Импортеры XNA Framework

Я пыталсяиспользуйте:

string line; 
using (StreamReader sr = new StreamReader("credits.txt"))
{
    while ((line = sr.ReadLine()) != null)
    {
         //reads line by line until eof        
         //do whatever you want with the text
    }
}

`

, но возникает исключение System.MethodAccessException« Попытка доступа к методу не удалась: System.IO.StreamReader..ctor (System.String) »

Нужно ли мне использовать вместо этого IsolatedStorage?

Редактировать: Обратите внимание, что я пытаюсь загрузить предварительно подготовленный файл, а не сохранить настройки для работающего приложения.например, текстовый файл, содержащий кредиты, которые я буду читать только во время выполнения, но должен иметь возможность редактировать во время разработки.

Ответы [ 3 ]

3 голосов
/ 19 сентября 2010

нашел его;Я могу сделать это без IsolatedStorage, просто нужно использовать файл XML, структурированный так:

<?xml version="1.0" encoding="utf-8" ?>
<XnaContent>
  <Asset Type="System.String">
    <credit>
      Firece Game Hunting

      Developer : Sebastian Gray

      Deer (CC) : Martin Pettitt
      http://www.flickr.com/photos/mdpettitt

    </credit>
  </Asset>
</XnaContent>

, а затем загрузить файл XML следующим образом:

public string LoadFromFile()
{
    using (System.Xml.XmlReader reader = System.Xml.XmlReader.Create("XMLFile1.xml"))
    {
        reader.MoveToContent();
        reader.ReadToFollowing("credit");
        credits = reader.ReadInnerXml();
    }
    return credits;
}

Файл XML может простодобавьте его в обычный проект (не проект контента) и установите для действия сборки значение «Содержимое», а для параметра «Копировать в выходной каталог» - «Всегда копировать».

0 голосов
/ 19 сентября 2010

Почему бы просто не написать расширение конвейера контента и позволить менеджеру контента беспокоиться об этом?Это на самом деле довольно легко. В этой статье MSDN объясняется, как .

Вот запись в блоге , которая дает превосходный обзор высокого уровня.

0 голосов
/ 19 сентября 2010

Нужно ли мне использовать вместо этого IsolatedStorage?

Да, каждое приложение (кроме приложений для ОС) должно использовать IsolatedStorage для хранения данных в физической памяти ИЛИ вы можете использоватьможет служить для хранения данных.

Пример IsolatedStorage

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...