Работа с файлами - VB (60876)

Узнай цену своей работы

Формулировка задачи:

Есть два условия: а) Создать файл, содержащий сведения о личной коллекции книголюба: шифр книги, автор, название, год издания, местоположение(номер шкафа, стеллажа и т. п.). б) Написать программу, выдающую следующую информацию: - место нахождения книги автора Х, название У(значение Х, У ввести с терминала); - список книг автора Z, находящихся в коллекции, - число книг издания ХХ года, имеющихся в библиотеке. С первым справился, а для выполнения второго не могу нормально извлечь данные из файла. Ошибка вылетает. Вот код:
Листинг программы
  1. Private Type typeBook
  2. Number As Integer
  3. Writer As String
  4. Name As String
  5. Date As Date
  6. Position As Byte
  7. End Type
  8. Dim Book(1 To 5) As typeBook
  9.  
  10. Private Sub Form_Load()
  11. Dim st As String
  12. Dim i As Integer
  13. Book(1).Name = "Dyxless"
  14. Book(2).Name = "The Telki"
  15. Book(3).Name = "Videoты"
  16. Book(4).Name = "Война и мир"
  17. Book(5).Name = "Преступление и наказание"
  18. Book(1).Writer = "Сергей Минаев"
  19. Book(2).Writer = "Сергей Минаев"
  20. Book(3).Writer = "Сергей Минаев"
  21. Book(4).Writer = "Лев Толстой"
  22. Book(5).Writer = "Фёдор Достоевский"
  23. Book(1).Number = 4564
  24. Book(2).Number = 3564
  25. Book(3).Number = 4435
  26. Book(4).Number = 2862
  27. Book(5).Number = 3245
  28. Book(1).Date = #12/1/2001#
  29. Book(2).Date = #4/20/2010#
  30. Book(3).Date = #7/30/2007#
  31. Book(4).Date = #11/24/2012#
  32. Book(5).Date = #1/13/2002#
  33. Book(1).Position = 4
  34. Book(2).Position = 9
  35. Book(3).Position = 4
  36. Book(4).Position = 8
  37. Book(5).Position = 3
  38. For i = 1 To UBound(Book)
  39. st = st & vbCrLf & "Название книги : " & Book(i).Name & vbCrLf & "Автор : " & Book(i).Writer & vbCrLf & _
  40. "Шифр книги : " & Book(i).Number & vbCrLf & "Дата выхода" & Book(i).Date & vbCrLf & _
  41. "Местоположение : шкаф № " & Book(i).Position & vbCrLf
  42. Next i
  43. Label1.Caption = st
  44. End Sub
  45. Private Sub Command1_click()
  46. Dim i As Integer
  47. Book(1).Name = "Dyxless"
  48. Book(2).Name = "The Telki"
  49. Book(3).Name = "Videoты"
  50. Book(4).Name = "Война и мир"
  51. Book(5).Name = "Преступление и наказание"
  52. Book(1).Writer = "Сергей Минаев"
  53. Book(2).Writer = "Сергей Минаев"
  54. Book(3).Writer = "Сергей Минаев"
  55. Book(4).Writer = "Лев Толстой"
  56. Book(5).Writer = "Фёдор Достоевский"
  57. Book(1).Number = 4564
  58. Book(2).Number = 3564
  59. Book(3).Number = 4435
  60. Book(4).Number = 2862
  61. Book(5).Number = 3245
  62. Book(1).Date = #12/1/2001#
  63. Book(2).Date = #4/20/2010#
  64. Book(3).Date = #7/30/2007#
  65. Book(4).Date = #11/24/2012#
  66. Book(5).Date = #1/13/2002#
  67. Book(1).Position = 4
  68. Book(2).Position = 9
  69. Book(3).Position = 4
  70. Book(4).Position = 8
  71. Book(5).Position = 3
  72. F = FreeFile
  73. Open App.Path & "\Текст лабы.txt" For Output As #F
  74. For i = 1 To UBound(Book)
  75. Write #F,
  76. Write #F, Book(i).Name
  77. Write #F, Book(i).Writer
  78. Write #F, Book(i).Number
  79. Write #F, Book(i).Date
  80. Write #F, Book(i).Position
  81. Write #F,
  82. Next i
  83. Close #F
  84.  
  85. End Sub
  86. Private Sub Command2_Click()
  87. Dim i As Integer
  88. Dim st1$, st2$, st3$, st4$, st5$
  89. F = FreeFile
  90. Open App.Path & "\Текст лабы.txt" For Input As #F
  91. For i = 1 To UBound(Book)
  92. Input #F, Book(i).Name
  93. Input #F, Book(i).Writer
  94. Input #F, Book(i).Number
  95. Input #F, Book(i).Date
  96. Input #F, Book(i).Position
  97. Next i
  98.  
  99. Close #F
  100. End Sub
Помогите пожалуйста

Решение задачи: «Работа с файлами»

textual
Листинг программы
  1. Private Sub Command1_click()
  2.    Dim i As Integer
  3.          
  4.     F = FreeFile
  5. Open App.Path & "\Г’ГҐГЄГ±ГІ Г«Г*ГЎГ».txt" For Output As #F
  6.  
  7. For i = 1 To UBound(Book)
  8. Write #F, Book(i).Name
  9. Write #F, Book(i).Writer
  10. Write #F, Book(i).Number
  11. Write #F, Book(i).Date
  12. Write #F, Book(i).Position
  13. Next i
  14.  
  15. Close #F
  16. Cls
  17.    
  18. End Sub
  19. Private Sub Command2_Click()
  20. Dim i As Integer
  21. Dim st1$, st2$, st3$, st4$, st5$
  22.  
  23. F = FreeFile
  24. Open App.Path & "\Г’ГҐГЄГ±ГІ Г«Г*ГЎГ».txt" For Input As #F
  25.  
  26. For i = 1 To UBound(Book)
  27. Input #F, Book(i).Name
  28. Input #F, Book(i).Writer
  29. Input #F, Book(i).Number
  30. Input #F, Book(i).Date
  31. Input #F, Book(i).Position
  32.  
  33. Next i
  34.  
  35. Close #F
  36.  
  37. For i = 1 To UBound(Book)
  38.     st = st & vbCrLf & "ГЌГ*çâГ*Г*ГЁГҐ ГЄГ*ГЁГЈГЁ : " & Book(i).Name & vbCrLf & "Àâòîð : " & Book(i).Writer & vbCrLf & _
  39.    

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут