Страница: 1 |
Вопрос: переменные из файла | Добавлено: 01.05.06 08:31 |
Автор вопроса: ![]() |
как в VB.net 3агрузить переменные из файла?
запись в файл я сделал.. построчно x1=переменная1 x2=переменная2 .. xn=переменнаяn а вот как считать их?? текст разобрался как считать а вот дальше.. =(( |
Ответы | Всего ответов: 14 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #1 | Добавлено: 01.05.06 10:12 |
Такие вещи в NET лучше всего хранить в xml-файле.
Но если у тебя встала проблема преобразования строки в число, то используй System.Convert .
Если же просто не можешь прочитать файл, то можно поступить так.. Dim MyText() As String = System.IO.File.ReadAllLines("C:\Test.txt"
![]() В результате в переменной MyText будет содержаться массив твоих строк.. |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 3112212350 Вопросов: 0 Ответов: 4 |
Профиль | Цитата | #2 | Добавлено: 02.05.06 05:57 |
в любом мануале, вобщем RTFM |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #3 | Добавлено: 02.05.06 18:00 |
если у меня в файле несолько массивов? |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #4 | Добавлено: 02.05.06 18:00 |
как их отдедить друг от друга? |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #5 | Добавлено: 02.05.06 21:15 |
Перебери массив строк MyText в цикле, и раздели по известному тебе признаку |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #6 | Добавлено: 03.05.06 05:11 |
дай пожалуйста ссылку на пример..
я нисгде не нашел.. методом научного тыка не вышло =( |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #7 | Добавлено: 03.05.06 13:18 |
Знаешь, ты изначально пошел по неверному пути. Тебе бы следовало вместо обычного текстового файла использовать xml-файл. Тогда бы все было на порядок проще!
А так.. чтобы помочь тебе разделить.. надо видеть образец содержимого твоего тестового файла.. Так что выкладывай сюда часть данных с разными массивами, будем разбираться.. |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #8 | Добавлено: 03.05.06 14:01 |
Private Sub SaveToolStripMenuItem_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click SaveFileDialog.Filter = "all files(*.*)|*.*" SaveFileDialog.ShowDialog() If SaveFileDialog.FileName > "" Then FILE_NAME = SaveFileDialog.FileName Using sw As StreamWriter = File.CreateText(FILE_NAME) For i = 1 To 99 Step 1 For ii = 1 To 8 Step 1 sw.WriteLine("x(" & i & "," & ii & " ![]() sw.WriteLine("a(" & i & "," & ii & " ![]() Next Next sw.Close() End Using End If End Sub это процедура сохранения.. на самом я ни разу не делал запись и извлечение переменных в файл поэтому опыта 0.. с xml ни разу не работал.. не успелось.. поэтому буду рад если научите.. пример покажите.. извините.. просто я до этого только ВБА юзал в аксесе.. но тут аксес не приемлем.. лишний.. |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #9 | Добавлено: 03.05.06 17:08 |
Ты использовал двумерный массив, поэтому и пример покажу на нем же. Но тут для сохранения и чтения данных я использовал не Xml, а Binary форматтер.Так же вполне подойдет Soap-класс..
'Импортируем пространства имён
Imports System.IO Imports System.Runtime.Serialization.Formatters.Binary Public Class Form1 'Объявляем переменные Private FilePath As String = "C:\Test.bin" Private MyArray(8, 8) As Integer 'Матрица таблицы умножения Private formatter As New BinaryFormatter Private fs As FileStream Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Сохранение в файл fs = File.Open(FilePath, FileMode.Create) formatter.Serialize(fs, MyArray) fs.Close() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 'Чтение из файла fs = File.Open(FilePath, FileMode.Open) MyArray = formatter.Deserialize(fs) fs.Close() MessageBox.Show("7*9=" & MyArray(6, 8), "Test", MessageBoxButtons.OK) End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 'Заполняем массив For i As Integer = 1 To MyArray.GetUpperBound(0) + 1 For ii As Integer = 1 To MyArray.GetUpperBound(1) + 1 MyArray(i - 1, ii - 1) = i * ii Next Next End Sub End Class |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #10 | Добавлено: 03.05.06 17:59 |
спасибо..
это так же сработает с 2мя массивами? |
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #11 | Добавлено: 04.05.06 01:16 |
да, только хранить их лучше в разных файлах.. |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #12 | Добавлено: 04.05.06 01:18 |
должен быть один файл.. =(
это чтото вроде сейва.. сейв на разных файлах будет неудобно загружать.. ладно.. так буду пробовать.. ![]() |
Номер ответа: 13 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #13 | Добавлено: 04.05.06 02:24 |
В таком случае проще сделать класс-обертку в котором будут 2 массива.. либо массив массивов.. и уже его сериализовать.. |
Номер ответа: 14 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 9 Ответов: 34 |
Профиль | Цитата | #14 | Добавлено: 04.05.06 02:27 |
хорошо..
попробую массив массивов.. ![]() |
Страница: 1 |
|