2012-11-28 2 views
0

간단한 프로그램 (10 개의 계명이있는 배열 문자열)을 만들고 나중에 다른 클래스 (다른 활동을 선택할 수있는 색인)를 만듭니다.공유 환경 설정 (putStringSet) 또는 다른?

저장 한 환경 설정으로이 배열을 저장하고 싶습니다. 사용자가 응용 프로그램을 다시 시작할 때 마지막 지점부터 계속할 수 있습니다.

은 내가 버전 compatibily도 2.3

배열 문자열을 저장하는 방법이 있나요 유지 거라고하면서 putStringSet는 API 11에서 사용할 수 있는지 읽어?

감사합니다.

+0

당신은 그것을 직렬화하여 넣을 수 있습니다. serializer 클래스를 찾으십시오. 그렇지 않으면 다음과 같이 하나씩 넣을 수 있습니다. http://www.sherif.mobi/2012/05/string-arrays-and-object-arrays-in.html – mango

+0

@mango 그건 훌륭한 해결책입니다. 당신은 대답으로 그것을 추가합니까? 덕분에 –

+0

! 그것을 하나 하나 넣으십시오, 좋은 방법입니까? (내 배열 700 항목 이상이 될 것입니다). –

답변

2

문자열 배열을 for 루프를 사용하여 일반 문자열로 변환하고 "|"과 같은 구분 기호를 사용합니다. putString을 사용하여 저장하십시오. 다시 검색 할 때 동일한 구분 기호를 사용하여 문자열을 분할하고 배열을 다시 작성합니다. 사항 String.split()가 구분 기호로 정규 표현식을 가정하기 때문에로 GetArray를 사용하는 경우

private String GetString(String[] array, String delimiter) 
{ 
    StringBuilder sb = new StringBuilder(); 
    for(String s : array) 
    { 
     if(sb.length() > 0) { sb.append(delimiter);} 
     sb.append(s); 
    } 

    return sb.toString(); 
} 

private String[] GetArray(String input, String delimiter) 
{ 
    return input.split(delimiter); 
} 

하는 것은 조심 그래서 당신은 문자를 사용하는 경우 "|" 당신은 예를 들어 그것을 벗어나야합니다. GetArray (myArray, "\\ |"); 희망이 도움이됩니다.

+0

mhmh ... 많이 검색했지만 찾지 못했습니다. :-(이 방법을 어떻게 구축 할 수 있습니까? 감사합니다. –

+0

코드로 답변을 업데이트했습니다. – Hyperlisk