2012-04-12 1 views
4

Я очень новичок в Unity3d и попытался открыть существующий проект. Во время воспроизведения отображается следующая ошибка.System.IO.File 'не содержит определения ошибки «AppendAllText» в Unity3D?

Активы/Scripts/DataAccess.cs (39,30): ошибка CS0117: System.IO.File' does not contain a definition for AppendAllText»

Я не имею ни малейшего представления о том, как решить эту проблему. Я застрял здесь.

Было бы признательно, если кто-нибудь решит эту проблему.

Спасибо заранее ...

+0

Это было в .NET с по крайней мере 2 по виду [документации] (http://msdn.microsoft.com/en-us/library/system.io.file.appendalltext.aspx). Какую версию Mono вы используете? Является ли Monodroid сокращенной версией структуры, такой как .NET compact framework? – Rup

+0

Спасибо за ваши комментарии .. Я видел, что документация из этого я понимаю, мне нужен .NET4. Я использую Mono 2.8.2.Ya его вырезанная версия – GoCrazy

+0

Нет, вам не нужно 4: я должен был связать одну из страниц перегрузки, которые говорят «Поддерживается в: 4, 3.5, 3.0, 2.0», плюс это также во время выполнения Silverlight. Если ваша вырезанная версия не поддерживает ее, то я думаю, вам придется ее самостоятельно закодировать: может быть реализация .NET в нерезанном источнике Mono, который вы можете украсть? – Rup

ответ

11

Я столкнулся с этим, когда никто другой в моей команде не смог воспроизвести его.

Мы ориентируемся на платформу iOS, и по каким-то причинам мои настройки сборки волшебным образом изменились на веб-проигрыватель. Изменение этого BACK для iOS исправило проблему для меня.

На Mac, я пошел в файл ==> Build Settings ...

Икона «Единство» был рядом с Web Player, поэтому я включил его прошивкой и нажать кнопку «Switch Platform». Он реимпортировал кучу вещей, и когда это было сделано, ошибка компилятора исчезла.

0

Вы можете попробовать File.AppendText:

using(StreamWriter sw = File.AppendText(
      Application.persistentDataPath + "error.log")) 
{ 
    sw.Write(e.ToString()); 
} 

Это может быть не лучший способ сделать это, но он должен работать. Я не знаю, добавляет ли AppendAllText неявную новую строку - не отображается в документах, но вместо этого вам может понадобиться .WriteLine.

+0

Спасибо за ваш ответ .. На самом деле я попробовал, что хорошо. Кажется, что это не работает. AppendAllText находится в документах http://msdn.microsoft.ком/EN-US/библиотека/ms143356.aspx. проверьте его здесь. – GoCrazy

+0

Извините, у меня нет лучших идей. Когда вы говорите, что не работаете, вы имеете в виду не писать в журнал или бросать исключение, или что-то еще? – Rup

+0

Его продолжают бросать исключение ... – GoCrazy