Char数组到一个类

时间:2008-11-24 09:37:15

标签: .net c++ managed

我有来自文件或网络的传入字节流(unsigned char)。我需要将这些数据放在一个类中,并且正在寻找一种NET方式来实现这一点。

我打赌有些人一直这样做,所以我猜有一种比使用BitConverter更好的方法。

我意识到我提供了太多的信息。让我尝试一个示例类:

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

然后我想通过f.ex传输此类中包含的数据(var1和var2)。网络套接字并在另一端接收数据

4 个答案:

答案 0 :(得分:3)

正如乔恩所说,目前尚不清楚,你需要什么。也许你在谈论也许Binary serialization你在寻找什么?

答案 1 :(得分:1)

你的意思并不完全清楚,但是如果你基本上想要一种缓冲数据的方法以便以后可以得到它,MemoryStream可能是你最好的选择。将所有数据写入其中,然后将Position设置为0,然后您可以再次读取数据。

答案 2 :(得分:1)

你有2个选项或二进制序列化(如PiRX所说)或XML序列化,为了提高性能,二进制文件越好,但我更喜欢xml序列化以获得可读性:

 [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;
            }
        }

答案 3 :(得分:0)

你可以使用std :: string类。它的一个构造函数将char *作为参数,因此您可以直接从char *转换为string。和string是存储字符串的好方法。转到http://www.cppreference.com/了解有关字符串的更多信息