我正在尝试使用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
{
}
};
}
我该怎么办?