将对象序列化为字符串 [英] Serialize object to string

查看:121
本文介绍了将对象序列化为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究TCP / IP项目,我需要通过套接字发送加密的程序包。我已经完成网络部分,可以发送字符串,但是我所有的包裹都是对象。因此,我必须序列化我的包类以进行字符串化和加密,然后在客户端收到反序列化并解密之后。

I am working on a TCP/IP project, I need to send encrypted packages via sockets. I've completed network part, I can send strings but all my packages are objects. So I have to serialize my package class to string and encrypt it, then after client receives deserialize and decrypt it. Cany you help me please?

Package.cs

Package.cs

 public class Package
{
    private string context;
    public string Context
    {
        get { return context; }
        set { context = value; }
    }
    private bool flag;
    public bool Flag
    {
        get { return flag; }
        set { flag = value; }
    }
    private int statusCode;
    public int StatusCode
    {
        get { return statusCode; }
        set { statusCode = value; }
    }

    public Package() { this.context = null; }
}


推荐答案

对于序列化,您可以使用 JavaScriptSerializer

For serialization you can use JavaScriptSerializer class.

然后向您的项目添加引用System.Web.Extensions;

Add reference System.Web.Extensions to your project then;

private string Serialize(object obj){
var serializer = new JavaScriptSerializer();
return serializer.Serialize(obj);
}

private object Deserialize(string json){
var serializer = new JavaScriptSerializer();
return serializer.Deserialize<object>(json);
}

对于加密/解密,您基本上可以使用Base64,但是如果您想要更特殊的答案,则需要告诉您有关要求的更多详细信息。

For encryption/decryption you can basically use Base64 but if you want more spesific answer, you need to tell more details about your requirements.

这篇关于将对象序列化为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆