Frage

Ich habe einen eingehenden Strom von Bytes (unsigned char) entweder aus einer Datei oder ein Netzwerk. Ich brauche diese Daten in einer Klasse platziert und suche nach einem NET-Weg, dies zu tun.

Ich wette einige tut dies die ganze Zeit, so dass ich denke, es gibt eine bessere Methode, dies zu tun, als BitConverter verwenden.

Ich weiß, ich geliefert zu litle Informationen. Lassen Sie mich versuchen, mit einem Beispiel-Klasse:

class data { 
void doSmething(); 
int var1; 
float var2; 
} 

Dann möchte ich die Daten übertragen (var1 und var2) in dieser Klasse enthalten sind über zb eine Netzwerkbuchse und die Daten am anderen Ende erhält

War es hilfreich?

Lösung

Wie Jon erwähnt, es ist nicht klar, was Sie brauchen. Vielleicht reden Sie vielleicht ist es Binary Serialisierung , was Sie suchen?

Andere Tipps

Es ist nicht ganz klar, was du meinst, aber wenn man im Grunde ist nach einer Möglichkeit, die Daten zu puffern, so dass Sie später auf sie bekommen können, Memory ist wahrscheinlich die beste Wahl. Schreiben Sie alle Ihre Daten, um es, dann setzen Position 0 und Sie können die Daten wieder lesen.

Sie haben 2 Möglichkeiten oder binäre Serialisierung (als PIRX sagte) oder XML-Serialisierung, für die Leistung, desto besser ist binär, aber ich ziehe es die XML-Serialisierung für seine Lesbarkeit:

 [Serializable]
    [XmlRoot("CONFIGURATION")]
    public class Configuration
    {
        EnterpriseCollection enterprises;
        public Configuration()
        {

            enterprises= new EnterpriseCollection();
        }
        [XmlElement("ENTERPRISE")]
        public EnterpriseCollection Enterprises
        {
            get
            {
                return this.enterprises;
            }
            set
            {
                this.enterprises = value;
            }
        }
        private string name;
        [XmlElement("NAME")]
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }

können Sie die std :: string Klasse verwenden. Eines seiner Konstrukteure nimmt char * als Argument, so dass Sie direkt aus char * string gehen kann. und String ist eine großartige Möglichkeit, Ihre Zeichenketten zu speichern. gehen Sie zu http://www.cppreference.com/ Weitere Informationen zu über Strings

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top