`

JValue supports 32 bit integer with bson

    博客分类:
  • C#
阅读更多

Json.net supports Bson however JValue convert every integer value to int64 bit..

 

In bson. int32 need 4 bytes and int64 need 8 bytes...so there is a room to improve it.

 

find JValue.cs

 

 

add a new constructor

 

public JValue(int value)
        : this(value, JTokenType.Integer)
    { }

 

 

 

and then find

 

 

public override void WriteTo(JsonWriter writer, params JsonConverter[] converters)

 

add some codes here:

 

case JTokenType.Integer:

+   if (this._value is int)
+              {
+                  writer.WriteValue(Convert.ToInt32(this._value, CultureInfo. InvariantCulture));
+              }
+              else
+              {
+                  writer.WriteValue(Convert.ToInt64(_value, CultureInfo.InvariantCulture));
+              }

 

 

build it..it should work fine with bson from now on.

 

分享到:
评论

相关推荐

    json4s-mongo_2.9.2-3.2.4.zip

    MongoDB的驱动程序通常会提供一种方式来将数据模型转换为BSON(Binary JSON),这是MongoDB内部使用的一种数据格式。在这个特定的版本中,JSON4S可能已经实现了与MongoDB驱动的集成,使得开发者可以直接使用JSON4S的...

    Newtonsoft.Json.dll 程序文件

    3. **动态 JSON 解析**:Json.NET 支持动态类型,允许开发者使用 `JObject`、`JArray`、`JValue` 等动态类型直接操作 JSON 数据,无需预先定义强类型类。 4. **LINQ to JSON**:Json.NET 提供了 LINQ to JSON API,...

    更快开发ASP.NET程序的25个秘密

    32. 使用Chrome开发者工具诊断JavaScript内存泄漏:当开发者遇到应用程序中的内存泄漏问题时,可以使用Chrome开发者工具来诊断和修复问题。 33. 监控内存消耗:持续监控应用程序的内存消耗,可以帮助开发者及时发现...

    JNI使用规范 JAVA书籍

    `jvalue`是一种联合体类型,用于传递Java值到本地代码中。 ```c typedef union _jvalue { jboolean z; jbyte b; jchar c; jshort s; jint i; jlong j; jfloat f; jdouble d; jobject l; } jvalue; ``` ##...

    fabric8-cxf-2.2.41.zip

    JSON4S提供了三种不同的JSON AST(抽象语法树)实现,即JValue、JsonAST.JValue和JsonAST._,这些实现可以与其他Scala JSON库兼容。"json4s exta"指的是JSON4S的扩展模块,提供了额外的功能,如XML到JSON的转换,...

    Jni 调用注意事项

    `jvalue`是一个联合类型,用于在参数数组中表示各种Java基本类型和对象引用。这个联合体包含了所有基本类型和`jobject`类型,使得它可以灵活地存储不同类型的值。 3. **引用类型**: JNI提供了两种类型的引用:...

    Json文件解析dll

    2. **JObject, JArray, JValue**: 这些是Json.NET提供的强类型JSON对象,它们继承自`JToken`。`JObject`代表JSON对象,`JArray`代表JSON数组,`JValue`则表示基本的JSON值。这些类提供了丰富的操作方法,可以直接对...

    unity和安卓交互调用安卓浏览器拉起应用市场

    AndroidJNI.CallStaticVoidMethod(clazz, methodID, new jvalue[] { new jvalue() { l = JavaConvert.StringToJavaString(packageName) } }); AndroidJNI.PopLocalFrame(IntPtr.Zero); } } } ``` 在这个例子中,...

    中软笔试题(答案仅做参考)

    然后,我们定义了两个线程类 ThreadMinus 和 ThreadPlus,分别实现了 Runnable 接口,并在 run 方法中调用了 JValue 的 add 和 dec 方法。最后,我们在 main 方法中创建了四个线程对象,并启动了它们。 3. 编写一个...

    JConer:Json 的 C++ 实现

    康纳 Json 的 C++ 实现设置JConer 将另一个存储库用于 C++ 编程的一些常见实用程序,例如...JValue* rst = load("myjsonfile", err);err.clear();rst = loads("[128, 256]", err);转储到文件和缓冲区 #include "jconer

    json4s-tests_2.9.0-3.2.4.zip

    JSON4S支持多种风格,如JValue、AST(抽象语法树)以及更接近原生Scala对象的模式。版本2.9.0-3.2.4代表了这个库的一个特定发行版,兼容Scala 2.9.0到3.2.4。 在这个名为"json4s-tests_2.9.0-3.2.4.zip"的压缩包中...

    scala-schema:Scala类的JSON模式生成,验证和反序列化

    Scala模式 从Scala类生成 从任何case class创建一个Schema对象 将架构导出为JSON 直接使用模式对象进行有效的,并带有机器和人类友好的... JValue import org . json4s . jackson . JsonMethods object ExampleApp

    Json.NET:.NET 流行的高性能 JSON 框架-开源

    使用 Json.NET 的 JObject、JArray 和 JValue 对象创建、解析、查询和修改 JSON。 使用类似 XPath 的语法查询 JSON。 比 DataContractJsonSerializer 快 50%,比 JavaScriptSerializer 快 250%。 Json.NET 让简单变...

    json4s-ast_2.10-3.2.1.zip

    在AST中,JSON对象被表示为一系列的类,如JObject、JArray、JValue等,这些类封装了JSON的各个部分,如对象、数组、字符串、数字等。 任务引擎(task-engine.zip)是一个开源项目,其描述为“异步多级可挂起任务引擎...

    json-path-assert-2.1.0.zip

    JSON4S支持多种风格,如JValue,用于直接操作AST,或者使用Jackson、Gson或 spray-json 风格的序列化和反序列化。"json4s-ast-master"可能是JSON4S AST模块的源代码主分支,包含了构建、测试和使用这个模块的所有...

    Json 转换工具类

    3. `JToken`:JSON的基本数据类型,包括JObject、JArray、JValue等。 4. `JsonConvert`:这是最重要的转换类,提供了序列化和反序列化的方法,如`DeserializeObject<T>`和`SerializeObject`。 例如,你可以使用`...

    play-json4s-jackson_2.11-0.3.0.zip

    而json4s则是一个轻量级的JSON库,通过提供多种风格(如JValue、AST等)来处理JSON,增强了灵活性。通过结合这两者,开发者可以方便地在Scala应用中进行JSON操作,无论是解析来自服务器的响应,还是将本地数据转换为...

    NewtonJson_NewtonJson_JSON_json解析_presentd78_

    3. JValue:表示JSON的基本值,如字符串、数字、布尔值等。 4. JsonSerializer:用于执行序列化和反序列化的类,可以设置各种序列化选项以适应不同的需求。 使用Newtonsoft.Json库,你可以使用`JsonConvert....

    json4s-mongo_2.9.3-3.2.5.zip

    这个库的灵活性在于它支持多种JSON AST(抽象语法树)实现,包括JValue、Native、Jackson和lift-json,这些都可以通过JSON4S进行互操作。在描述中提到的“mongoa”可能是指MongoDB的驱动或适配器,它允许JSON4S与...

Global site tag (gtag.js) - Google Analytics