none
struktura a pole

    Dotaz

  • Dobry den,

    potreboval bych poradit, zakladni vec, jak jednoduse prevedu libovolnou strukturu na pole. Duvodem je nutnost UDP komunikace, ktera vyzaduje byte[] na vysilani i prijmu. Nebudu vysilat ani prijimat text, ale nejaka strukturovana binarni data.

    Predem dekuji
    28. srpna 2008 18:52

Odpovědi

  • Dobry den,

     

    prosim nepokladejte otazky do obou for najednou. Toto je vec .NET frameworku, takze by stejne mela byt uplne jinde  Binarni serializace se provadi pomoci tridy BinaryFormatter, viz napriklad http://www.informit.com/guides/content.aspx?g=dotnet&seqNum=209.

     

    Samozrejme mnohem univerzalnejsi reseni by bylo napsat UDP channel pro WCF (System.ServiceModel), ale to rozhodne neni trivialni udelat spravne. I kdyz, pokud se nepletu, soucasti .NET samples ve Windows SDK je priklad komunikace po UDP pomoci WCF. To by stalo za prozkoumani...

    28. srpna 2008 21:12
    Přispěvatel
  • Dobrý den,

    sice už to máte asi vyřešené, ale pokud ne, tak já bych volil spíše třídu BitConverter, která vám převede jednotlivé základní typy(int, double, bool...) do/z byte[]. Strukturu pak stačí rozděli na tyto typy. Na string je vhodné používat Encoding.UTF8.GetBytes a Encoding.UTF8.GetString.

    Hezký den
    3. prosince 2008 15:39

Všechny reakce

  • Dobry den,

     

    prosim nepokladejte otazky do obou for najednou. Toto je vec .NET frameworku, takze by stejne mela byt uplne jinde  Binarni serializace se provadi pomoci tridy BinaryFormatter, viz napriklad http://www.informit.com/guides/content.aspx?g=dotnet&seqNum=209.

     

    Samozrejme mnohem univerzalnejsi reseni by bylo napsat UDP channel pro WCF (System.ServiceModel), ale to rozhodne neni trivialni udelat spravne. I kdyz, pokud se nepletu, soucasti .NET samples ve Windows SDK je priklad komunikace po UDP pomoci WCF. To by stalo za prozkoumani...

    28. srpna 2008 21:12
    Přispěvatel
  • Sorry :-(

    Dekuji za odpoved.
    Ja jsem totalni .NET zacatecnik, proto jsem predpokladal, ze bude rozdil mezi VB a C#. Proto jsem to dal do obeho.
    28. srpna 2008 22:12
  • No, pokud se jedná o VB.NET a C#.NET, žádný valný rozdíl mezi samotnou implementací, která je mimochodem

    v článku z linku od Jachymka velmi jasně a pěkně popsána, nebude. Většinou je celkem snadné mezi .NET jazyky překládat.. a pokud je celá serializace záležitostí třídy Serializer a Stream na dva řádky, což jste nemohl vědět, není mezi těmi jazyky už vůbec žádný rozdíl Smile

    27. listopadu 2008 11:08
  • Dobrý den,

    sice už to máte asi vyřešené, ale pokud ne, tak já bych volil spíše třídu BitConverter, která vám převede jednotlivé základní typy(int, double, bool...) do/z byte[]. Strukturu pak stačí rozděli na tyto typy. Na string je vhodné používat Encoding.UTF8.GetBytes a Encoding.UTF8.GetString.

    Hezký den
    3. prosince 2008 15:39