标签: serialization

在Java中扩展Serializable类时,我选择serialVersionUID是否重要?

我正在扩展一个实现Serializable接口的类(ArrayBlockingQueue).Sun的文档(和我的IDE)告诉我,我应该设置这个值以防止恶作剧:

但是,强烈建议所有可序列化类显式声明serialVersionUID值,因为默认的serialVersionUID计算对类细节高度敏感,这些细节可能因编译器实现而异,因此在反序列化期间可能导致意外的InvalidClassExceptions.

现在,我不在乎放在那里的价值.有关系吗?

java serialization

42
推荐指数
2
解决办法
8719
查看次数

DataContract XML序列化和XML属性

是否可以将此XML反序列化为标记为DataContract属性的对象?

<root>
<distance units="m">1000</distance>
</root>
Run Code Online (Sandbox Code Playgroud)

您可能会看到有"单位"属性.我不相信这是支持的.还是我错了?

c# xml wcf serialization datacontract

42
推荐指数
2
解决办法
6万
查看次数

将Xml反序列化为对象时出错 - 不期望xmlns =''

我在尝试反序列化某些XML时遇到了麻烦,希望有人可以提供一些帮助.我已经阅读了很多类似的帖子,但我无法解决这个问题.

XML我试图反序列化

<register-account success="false">
  <user-name>xxxxx</user-name>
  <password>fghgh</password>
  <email>test@example.com</email>
  <error>
    <errorcode>120</errorcode>
    <errormessage>The password is invalid</errormessage>
  </error>
</register-account>
Run Code Online (Sandbox Code Playgroud)

我正在尝试将反序列化为:

[Serializable, XmlRoot(ElementName = "register-account", Namespace = "MyNamespace")]
[XmlType("register-account")]
public class RegisterAccountResponse
{
    [XmlAttribute("success")]
    public bool Success { get; set; } 

    /// <summary>
    /// Gets or sets the Tennant email address
    /// </summary>
    [XmlElement("email")]
    public string Email { get; set; }

    /// <summary>
    /// Gets or sets the tennant password
    /// </summary>
    [XmlElement("password")]
    public string Password { get; set; }

    /// <summary>
    /// Gets or …
Run Code Online (Sandbox Code Playgroud)

.net c# xml serialization deserialization

42
推荐指数
1
解决办法
9万
查看次数

我应该使用Pickle还是cPickle?

Python有序列化picklecPickle模块.

cPickle有一个明显的优势pickle:速度.什么,如果有的话,优势并pickle有过cPickle

python serialization pickle

42
推荐指数
2
解决办法
1万
查看次数

用C语言序列化数据结构

我想要一个可以将我的数据结构序列化到磁盘的C库,然后再加载它们.它应该接受任意嵌套的结构,可能使用循环引用.

我认为这个工具需要一个描述我的数据结构的配置文件.允许库使用代码生成,尽管我很确定没有它就可以这样做.

注意我对数据可移植性不感兴趣.我想将它用作缓存,所以我可以依赖不改变的环境.

谢谢.


结果

有人建议Tpl是一个很棒的库,但我相信它不会做任意的对象图,例如每个包含两个其他节点的节点树.

另一个候选人是Eet,这是Enlightenment窗口管理器的一个项目.看起来很有趣但是,似乎没有能力序列化嵌套结构.

c serialization

41
推荐指数
3
解决办法
4万
查看次数

我如何JSON序列化Python字典?

我正在尝试为JSON编写一个Django函数来序列化某些东西并将其返回到一个HttpResponse对象中.

def json_response(something):
    data = serializers.serialize("json", something)
    return HttpResponse(data)
Run Code Online (Sandbox Code Playgroud)

我这样使用它:

return json_response({ howdy : True })
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

"bool" object has no attribute "_meta"
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

编辑:这是追溯:

http://dpaste.com/38786/

django serialization json

41
推荐指数
4
解决办法
6万
查看次数

将多个表单序列化在一起?

您可以将多个表单序列化为一个,以便只发出一个帖子或ajax请求吗?我已经四处寻找,只需通过post/ajax提交每个表单.

jquery serialization jsonobject

41
推荐指数
3
解决办法
4万
查看次数

在java中的jackson json反序列化期间忽略缺少的属性

在示例中

class Person {
   String name;
   int age;
}
Run Code Online (Sandbox Code Playgroud)

如果json对象缺少属性'age',

{
  name : John
}

Person person = objectMapper.readValue(jsonFileReader, Person.class);
Run Code Online (Sandbox Code Playgroud)

它抛出一个JsonMappingException,说它不能反序列化.是否有注释在反序列化期间忽略缺少的字段?

谢谢

java serialization json jackson

41
推荐指数
5
解决办法
7万
查看次数

.NET Core:从API JSON响应中删除空字段

在.NET Core 1.0的全局级别(所有API响应)中,如何配置Startup.cs以便在JSON响应中删除/忽略空字段?

使用Newtonsoft.Json,您可以将以下属性应用于属性,但我希望避免将其添加到每个属性:

[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public string FieldName { get; set; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public string OtherName { get; set; }
Run Code Online (Sandbox Code Playgroud)

serialization json .net-core asp.net-core-1.0

41
推荐指数
7
解决办法
2万
查看次数

如何使用Json.Net从我的WCF休息服务(.NET 4)返回json,而不是字符串,用引号括起来?

更新2010年10月19日 我知道我刚才问过这个问题,但这些答案中显示的解决方法难以令人满意,对许多人来说,这仍然是一个常见的问题.WCF只是不灵活.我创建了自己的开源C#库,用于在没有WCF的情况下创建REST服务.检查restcake.netrest.codeplex.com以获取有关所述库的信息. 结束更新

更新8/2/2012 ASP.NET Web API(以前是WCF Web API,REST WCF的替代品)默认情况下 使用Json.NET END UPDATE

DataContractJsonSerializer无法处理许多情况下是Json.Net在正确配置(具体周期)处理就好了.

一个服务方法可以返回一个特定的对象类型(在这种情况下是一个DTO),在这种情况下DataContractJsonSerializer将使用它,或者我可以让该方法返回一个字符串,并自己使用Json.Net进行序列化.问题是当我返回一个json字符串而不是一个对象时,发送到客户端的json用引号括起来.

使用DataContractJsonSerializer,返回特定的对象类型,响应是:
{"Message":"Hello World"}

使用Json.Net返回json字符串,响应是:
"{\"Message\":\"Hello World\"}"

我不想在客户端上使用eval()或JSON.parse()结果,如果json以字符串形式返回,用引号括起来就是我必须要做的.我意识到这种行为是正确的; 这不是我想要/需要的.我需要原始的json; 当服务方法的返回类型是对象而不是字符串时的行为.

那么,我如何让我的方法返回一个对象类型,但不能使用DataContractJsonSerializer?我怎么能告诉它使用Json.Net序列化器呢?

或者,有没有直接写入响应流?所以我可以自己退回原始的json?没有包装报价?

这是我的人为例子,供参考:

[DataContract]
public class SimpleMessage
{
    [DataMember]
    public string Message { get; set; }
}

[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
public class PersonService
{
    // uses DataContractJsonSerializer
    // returns {"Message":"Hello World"}
    [WebGet(UriTemplate = "helloObject")] …
Run Code Online (Sandbox Code Playgroud)

rest wcf serialization json.net

40
推荐指数
2
解决办法
6万
查看次数