2014-01-12 3 views
0

Я пытался создать список с людьми, которые люди могут добавить туда, например, в список покупок, но моя программа не может получить доступ к диску C: \, поэтому я решил поместить его в папку ресурсов, но что не работает кто-то есть какие-либо идеи, как позволить работать/??vb.net читать и писать в текстовый файл внутри ресурсов

мой код:

Private Sub ThirteenButton14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThirteenButton14.Click 
    ListBox1.Items.Remove(ListBox1.SelectedItem) 
    Dim i As Integer 
    w = New IO.StreamWriter(My.Resources.FavoriteList) 
    For i = 0 To ListBox1.Items.Count - 1 
     w.WriteLine(ListBox1.Items.Item(i)) 
    Next 
    w.Close() 
    ListBox1.Items.Clear() 
    R = New IO.StreamReader(My.Resources.FavoriteList) 
    While (R.Peek() > -1) 
     ListBox1.Items.Add(R.ReadLine) 
    End While 
    R.Close() 
End Sub 

Private Sub ThirteenButton13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThirteenButton13.Click 
    ListBox1.Items.Add(ThirteenTextBox6.Text + " | " + ThirteenTextBox7.Text) 
    ListBox1.SelectedIndex = ListBox1.SelectedIndex + 1 
    Dim i As Integer 
    w = New IO.StreamWriter(My.Resources.FavoriteList) 
    For i = 0 To ListBox1.Items.Count - 1 
     w.WriteLine(ListBox1.Items.Item(i)) 
    Next 
    w.Close() 
    ListBox1.Items.Clear() 
    R = New IO.StreamReader(My.Resources.FavoriteList) 
    While (R.Peek() > -1) 
     ListBox1.Items.Add(R.ReadLine) 
    End While 
    R.Close() 
End Sub 

это не работало для меня. любая помощь оценивается y = thanks

+3

Дважды вы сказали, что «did not work», но вы не смогли сказать, что означает «не работает». Каким образом это не работает? Вы четко знаете, что не сработало, потому что вы разместили здесь и так сказали. Почему бы не поделиться этой информацией с нами, а также в своем посте? Мы не можем видеть ваш экран или читать ваш ум. Если вы хотите, чтобы мы помогли вам, дайте нам информацию, которую у вас уже есть, чтобы сделать это проще. Если вы получаете сообщение об ошибке, укажите ** точное сообщение об ошибке *. Если что-то не работает, объясните, как это не работает. –

ответ

1

Приложение не имеет «папки ресурсов». В вашем проекте есть такая папка, потому что там хранятся исходные элементы, но вся суть ресурсов заключается в том, что они представляют собой данные, скомпилированные в сам EXE. Таким образом, они доступны только для чтения. Если вы хотите, чтобы общее местоположение было безопасным для всех пользователей, используйте папку общих документов.

Что касается вашего кода, если вы добавляете файл в свои ресурсы, то это содержимое этого файла, которое скомпилируется в EXE и возвращается через My.Resources. Во время выполнения нет файла, поэтому во время выполнения нет пути к файлу, поэтому ваши попытки создать StreamReader и StreamWriter неизбежно завершатся. Я предполагаю, что вы добавили текстовый файл в качестве ресурса. В этом случае My.Resources.FavoriteList вернет содержимое этого файла в виде строки. Вы можете использовать эти данные, но вы не можете изменить их и сохранить изменения обратно на ресурс, потому что этот ресурс является частью вашего EXE.

Смежные вопросы