을 개체를 저장하고 관리하는 방법 나는이 수업이 있습니다구성
class A implements Composite
{
Composite b = new B();
}
class B implements Composite
{
}
interface Composite
{
}
기본적으로 A
이 B
로 구성되어 나는 파일이 구성을 유지를 저장할. 활동에
나는이 작업을 수행 :
이FileInputStream fileInputStream = null;
try
{
fileInputStream = openFileInput(filename);
}
catch(FileNotFoundException e)
{}
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream)l;
BufferReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder stringBuilder = new StringBuilder();
String line;
try
{
while((line = bufferedReader.readLine()) != null)
{
stringBuilder.append(line);
}
}
catch(IOException e)
{
}
String json = stringBuilder.toString();
Gson gson2 = new Gson();
// Exception here.
A a2 = gson2.fromJson(json, A.class);
문제는 클래스의 내부 객체 B 함께 A. GSON이 보이지 않는다 :
이String filename = "myfile.txt";
A a = new A();
Gson gson = new Gson();
String s = son.toJson(a);
FileOutputStream outputStream;
try
{
outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
outputStream.write(s.getBytes);
outputStream.close();
}
catch(Exception e)
{
}
그럼 내가 읽은이 코드를 사용 그 종류는 B
입니다. 그래서 나는이 예외를 얻을 :
JNI는 응용 프로그램에서 오류를 발견 : A,하지 클래스 내
내 대답을 업데이트하고 테스트 했으므로 전체 코드 [here] (https://gist.github.com/lelloman/a009a8b7c863071551c6dbc2d0fdaa0d) – lelloman