New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
实体类字段超过32个解析不了 #1490
Comments
有测试超过1000+字段的,能提供重现问题的testcase和错误信息么? |
32个及以下就可以。超过32个就解析不了了。 import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import com.alibaba.fastjson2.JSON
import com.alibaba.fastjson2.parseObject
import com.alibaba.fastjson2.support.retrofit.Retrofit2ConverterFactory
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val json = """
{
"field1":"1"
}
""".trimIndent()
try {
val data1 = json.parseObject<Entity>()
Log.w("=========>>", "======>>>data1:$data1")
// val data2 = JSON.parseObject(json.toByteArray(), Entity::class.java)
// Log.w("=========>>", "======>>>data2:$data2")
} catch (e: Exception) {
e.printStackTrace()
}
}
}
data class Entity(
val field1: String = "",
val field2: String = "",
val field3: String = "",
val field4: String = "",
val field5: String = "",
val field6: String = "",
val field7: String = "",
val field8: String = "",
val field9: String = "",
val field10: String = "",
val field11: String = "",
val field12: String = "",
val field13: String = "",
val field14: String = "",
val field15: String = "",
val field16: String = "",
val field17: String = "",
val field18: String = "",
val field19: String = "",
val field20: String = "",
val field21: String = "",
val field22: String = "",
val field23: String = "",
val field24: String = "",
val field25: String = "",
val field26: String = "",
val field27: String = "",
val field28: String = "",
val field29: String = "",
val field30: String = "",
val field31: String = "",
val field32: String = "",
val field33: String = "",
)
|
Signed-off-by: Kraity <kraty@krait.cn>
Signed-off-by: Kraity <kraty@krait.cn>
https://oss.sonatype.org/content/repositories/snapshots/com/alibaba/fastjson2/fastjson2/2.0.33-SNAPSHOT/ |
还是不行,实体类是data class 不行,如果是普通的class就可以,这个和 #1491 差不多 |
字段超过32个,Retrofit2ConverterFactory中解析报错。
然后JSON.parseObject(byteArray, Test.class) 这个解析json的也会报错
implementation("com.alibaba.fastjson2:fastjson2-kotlin:2.0.32")
implementation("com.alibaba.fastjson2:fastjson2-extension:2.0.32")
The text was updated successfully, but these errors were encountered: