Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница: 1 |

 

  Вопрос: Работа с файлами, XML Добавлено: 25.04.06 13:32  

Автор вопроса:  Mufasa | Web-сайт: webpricols.narod.ru
Здраствуйте, уважаемые ;)
У меня возникло несколько вопросов.
Установил Microsoft Visual Basic 2005 - сижу разбираюсь...разбирался целые сутки. В итоге проспал универ...
Итак. Вопросы:
1. Есть несколько папок. В этих папкае есть файлы(например) типа qqq1.xml, qqq2.xml,...,qqqN.xml
Так вот тот файл, где N больше всех и есть нужный файл. То есть как я понял файл нужно выбирать по дате?
2. Есть этот qqqN.xml
Как из него можно взять данные. Причём XML не похож на те, что в примерах =(

loadkey=<?xml version="1.0" encoding="utf-8"?>
<key valid="1"/>
&overload=0&xmldata=<?xml version="1.0" encoding="utf-8"?>
<cars number="12" model="2110"><car id="7231409" prefix="desyatka" scope="0000" postfix="111"><cana="100dollars" nalog="%2B1.55%25"/></car>
<cars number>

Я хоел бы, что бы значения были переданы в разные переменные. Например значение prefix в переменную pref_.
Смотрел пример, но там между тэгами значения стоят. Так и не разобрался. Помогите пожалуйста. Заранее благодарен.

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #1
Добавлено: 26.04.06 00:19
Я долго присматривался к этому xml. И чем больше присматривался, тем больше он мне не нравился. В итоге написал класс для работы с INI и теперь живу счастливо (но неизвестно, насколько долго я так смогу). Потом прочитал рецензию на xml одного чела и полностью с ним согласился (оказалось, что не я один противник xml). Самый главный негатив - объём. Реальной инфы у тебя мизер, а сколько хлама!

Буду рад, если кто-то разочарует меня простотой работы с ними!!! Пока я видел только здоровые, не блещущие разнообразием листинги, в которые и вникать-то не хочется...

Ну дык вернёмся к вопросам...
1. Составляешь список файлов (рекурсивный обход всех папок), отбрасываешь qqq, отбрасываешь .xml и ищешь самое большое число - файл найден. Только не упорядочивай как текст - иначе у тебя 9 будет больше 10.
2. По-моему, твой файл неправильный xml. Начнём с того, что тэг cars нигде не закрывается, а это, насколько я знаю, несвойственно xml.

Ответить

Номер ответа: 2
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 26.04.06 16:02
должны быть готвые модули/классы, кажись даже контрол какой-то от MS был, непомню как его зовут... на худой конец вообще саому ркчками распарсить, ну или ножками :)

Ответить

Номер ответа: 3
Автор ответа:
 Mufasa



Вопросов: 19
Ответов: 63
 Web-сайт: webpricols.narod.ru
 Профиль | | #3
Добавлено: 03.05.06 18:03
Блин!
Во пояснили =)
Ничё толком не понял )

кстати не подскажите, что теперь за место параметра Index в VB 2005 ????

Ответить

Номер ответа: 4
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #4 Добавлено: 05.05.06 00:54
Буду рад, если кто-то разочарует меня простотой работы с ними!!!


Neco,если речь идет о .NET, то я с радостью сделаю это! :-)))

Ответить

Номер ответа: 5
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #5 Добавлено: 05.05.06 00:57
кстати не подскажите, что теперь за место параметра Index в VB 2005 ????

Ничего... в виду ненадобности..
Используй AddHandler и sender

Ответить

Номер ответа: 6
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #6
Добавлено: 05.05.06 01:27
Neco,если речь идет о .NET, то я с радостью сделаю это! :-)))

Уже сделал! :)
Сериализация рулит!

Ну и код надо выложить...
Imports System.Runtime.Serialization
Imports System.Runtime.Serialization.Formatters.Binary
Imports System.IO

Public Class Form1
    Dim myt As Hashtable
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim stra As String = "!!!"
        Dim strm As New FileStream("d:\!!!.ser", FileMode.Open)

        Dim fmt As IFormatter = New BinaryFormatter
        myt = New MMM
        myt.Add(stra, "arrriva!";)

        fmt.Serialize(strm, myt)
        strm.Close()

        Dim r_strm As New FileStream("d:\!!!.ser", FileMode.Open)
        Dim r_myt As New MMM
        r_myt = CType(fmt.Deserialize(r_strm), MMM)
        Debug.WriteLine(r_myt.Item(stra))
    End Sub

    <Serializable()> Private Class MMM
        Inherits Hashtable
        Public Sub New()
        End Sub
        Private Sub New(ByVal info As System.Runtime.Serialization.SerializationInfo, ByVal context As System.Runtime.Serialization.StreamingContext)
            MyBase.New(info, context)
        End Sub
        Public Overrides Sub GetObjectData(ByVal info As System.Runtime.Serialization.SerializationInfo, ByVal context As System.Runtime.Serialization.StreamingContext)
            MyBase.GetObjectData(info, context)
        End Sub
    End Class
End Class

Ответить

Номер ответа: 7
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #7 Добавлено: 05.05.06 16:46
Сериализация рулит!

Хвала всевышнему! :-)) Хоть один оценил достоинства и простоту!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам