Ошибка при добавлении в IsolatedStorageFile - PullRequest
0 голосов
/ 11 января 2012

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

IsolatedStorageFileStream("Folder\\barcodeinfo.txt", FileMode.Append, 
                                     FileMode.OpenOrCreate, myStore))

Iдумаю, что это как-то связано с Filemode.Append .. Я пытаюсь добавить в файл, а не создавать новые

// Obtain the virtual store for the application.
IsolatedStorageFile myStore = IsolatedStorageFile.GetUserStoreForApplication();
// Create a new folder and call it "MyFolder".
myStore.CreateDirectory("Folder");

// Specify the file path and options.
using (var isoFileStream = new IsolatedStorageFileStream("Folder\\barcodeinfo.txt", FileMode.Append, FileMode.OpenOrCreate, myStore))
{
      //Write the data
      using (var isoFileWriter = new StreamWriter(isoFileStream))
      {
            isoFileWriter.WriteLine(textBox1.Text);
            isoFileWriter.WriteLine(textBox2.Text);
            isoFileWriter.WriteLine(textBox3.Text);
      }
}

Ответы [ 2 ]

2 голосов
/ 11 января 2012

Нет перегрузки, требующей двух FileModes . Должно быть

IsolatedStorageFileStream("Folder\\barcodeinfo.txt", FileMode.Append, 
                                     FileAccess.Write, myStore));

Важное замечание о FileMode.Append :

[FileMode.Append] Открывает файл, если он существует, и ищет конец файла, или создает новый файл. Добавить можно использовать только в сочетании с записью. Попытка искать позицию до конца файла IOException и любая попытка чтения завершается неудачей и выдает NotSupportedException.

, поэтому FileAccess.Write используется.

0 голосов
/ 11 января 2012

Похоже, у вас есть FileMode.Append, FileMode.OpenOrCreate.Это 2 режима файла.Первый параметр - FileMode, а второй - FileAccess.

.

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