我正在尝试使用TypeAdapterFactory
序列化和反序列化一些客户对象。我想在运行时将所有对象序列化为特定类型。
所以给定 aString classpath
和 aJsonObject object
我想将对象反序列化为Class.forName(classpath)
.
public <T> TypeAdapter<T> create(final Gson gson, final TypeToken<T> tokenType)
{
final TypeAdapter<T> delegate = gson.getDelegateAdapter(this, tokenType);
final TypeAdapter<JsonElement> elementAdapter = gson.getAdapter(JsonElement.class);
return new TypeAdapter<T>()
{
@Override
public T read(JsonReader reader) throws IOException
{
Class<?> clazz = Class.forName(classpath);
JsonObject jsonObject = elementAdapter.read(reader).getAsJsonObject();
// Here I want to return an instance of clazz
}
@Override
public void write(JsonWriter writer, T value) throws IOException
{
}
};
}
我该怎么办?