Страница: 1 |
Страница: 1 |
Вопрос: Запись всех полей класса в файл
Добавлено: 09.06.09 12:32
Автор вопроса: FIX | ICQ: 348680795
Здарствуйте. Есть класс
Imports System.Runtime.InteropServices
Public Module Types
<StructLayout(LayoutKind.Explicit, Pack:=1, Size:=528)> _
Public Class Element
<FieldOffset(0)> <VBFixedString(16)> Public Name As String
<FieldOffset(16)> <VBFixedString(512)> Public Path As String
<FieldOffset(0)> Public AllData(527) As Byte
Public Sub New()
'Name = ""
'Path = ""
'AllData = ""
End Sub
End Class
End Module
и код формы
Imports System.Runtime.InteropServices
Public Module Types
<StructLayout(LayoutKind.Explicit, Pack:=1, Size:=528)> _
Public Class Element
<FieldOffset(0)> <VBFixedString(16)> Public Name As String
<FieldOffset(16)> <VBFixedString(512)> Public Path As String
<FieldOffset(0)> Public AllData(527) As Byte
Public Sub New()
'Name = ""
'Path = ""
'AllData = ""
End Sub
End Class
End Module
я хочу посредством
1) В чем ошибка?
2) Помогите реализовать задумку
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
FIX
ICQ: 348680795
Вопросов: 39
Ответов: 62
Профиль | | #1
Добавлено: 09.06.09 12:35
упс. Вот код формы
Public Class Form1
Public elements As New List(Of Element)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'dim c as
elements.Add(New Element())
elements(0).Name = "---Fix---"
elements(0).Path = "c:\Program files\VBNET\"
TextBox1.Text = elements(0).Name
TextBox2.Text = elements(0).Path
TextBox3.Text = System.Text.Encoding.ASCII.GetString(elements(0).AllData)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim fs As New System.IO.FileStream("MyFile.txt", IO.FileMode.Create)
fs.Write(elements(0).AllData, 0, elements(0).AllData.Length)
fs.Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim fs As New System.IO.FileStream("MyFile.txt", IO.FileMode.Open)
fs.Read(elements(0).AllData, 0, FileLen("MyFile.txt")
fs.Close()
TextBox1.Text = elements(0).Name
TextBox2.Text = elements(0).Path
TextBox3.Text = elements(0).AllData.ToString
End Sub
End Class
Номер ответа: 2
Автор ответа:
Ra$cal
ICQ: 8068014
Вопросов: 18
Ответов: 817
Web-сайт:
Профиль | | #2
Добавлено: 09.06.09 17:08
в дотнете нету сериализации?
Номер ответа: 3
Автор ответа:
FIX
ICQ: 348680795
Вопросов: 39
Ответов: 62
Профиль | | #3
Добавлено: 09.06.09 18:33
Спасибо попробую
Номер ответа: 4
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #4
Добавлено: 10.06.09 21:20
Но я бы все-таки советовал XML сериализацию или что-то в этом роде, тк это слишком хардкорный метод