문자열이 tajmahal.txt sarjan.pdf noorjahan.exe
입니다. 이 문자열을 ar[0] = tajmahal.txt
, ar[1] = sarjan.pdf
및 ar[2] = noorjahan.exe
과 같은 문자열 배열에 저장하려고합니다. Java에서 빌드 함수를 사용하지 않고 어떻게 할 수 있습니까 (j2se는 많은 j2se 함수를 지원하지 않기 때문에). 어떤 도움이라도 좋을 것입니다. 미리 감사드립니다.문자열 부분을 문자열 배열로 저장
0
A
답변
0
String.split을 사용할 수 없으므로 당신은 자바 ME 구성/프로파일은 당신이 사용 설정하는에 따라이 answer
public static String[] Split(String splitStr, String delimiter) {
StringBuffer token = new StringBuffer();
Vector tokens = new Vector();
// split
char[] chars = splitStr.toCharArray();
for (int i=0; i < chars.length; i++) {
if (delimiter.indexOf(chars[i]) != -1) {
// we bumbed into a delimiter
if (token.length() > 0) {
tokens.addElement(token.toString());
token.setLength(0);
}
} else {
token.append(chars[i]);
}
}
// don't forget the "tail"...
if (token.length() > 0) {
tokens.addElement(token.toString());
}
// convert the vector into an array
String[] splitArray = new String[tokens.size()];
for (int i=0; i < splitArray.length; i++) {
splitArray[i] = (String)tokens.elementAt(i);
}
return splitArray;
}
0
String str="tajmahal.txt sarjan.pdf noorjahan.exe";
StringTokenizer st=new StringTokenizer(str," ");
String[] arr=new String[st.countTokens()];
int i=0;
while (st.hasMoreElements()){
arr[i]=st.nextToken();
i++;
}
+0
이것이 작동합니다. –
0
에서 분할의 구현을 볼 수 있습니다.
컬렉션이없는 CLDC/MIDP의 경우 StringTokenizer, split() 등이 있습니다.
- 해당 공간 ('')을 먼저 계산하십시오.
- String [count + 1]을 준비합니다.
- 각 토큰을 분할하면서 StringBuffer로 문자를 버퍼링합니다.
static String[] split(final String string) {
// count spaces
int spaces = 0;
for (int i = 0; i < string.length(); i++) {
if (string.charAt(i) == 0x20) {
spaces++;
}
}
// prepare the array and buffer
final String[] split = new String[spaces + 1];
final StringBuffer buffer = new StringBuffer();
int index = 0;
for (int i = 0; i < string.length(); i++) {
if (string.charAt(i) == 0x20) {
split[index++] = buffer.toString();
buffer.delete(0, buffer.length());
continue;
}
buffer.append(string.charAt(i));
}
return split;
}
0
는 J2ME에 있고 StringTokenizer의 구현이 있습니다. this example을 확인하면 작업에 도움이됩니다. 의
StringTokenizer token;
token = new StringTokenizer(str);
int i=0;
while(token.hasMoreElements()){
ar[i++]= tok.nextToken();
}
관련 문제
- 1. 파일에서 배열로 문자열 저장
- 2. 문자열 부분을 잘라내주는 문자열 메서드
- 3. 배열로 문자열
- 4. 문자열 속성을 문자열 배열로 변환
- 5. C에서 문자열 배열로 문자열 분할
- 6. 라디오 버튼 선택을 문자열 배열로 저장
- 7. 문자열 부분을 얻는 방법
- 8. 목록에있는 문자열 부분을 제거하십시오.
- 9. 문자열 부분을 잘라 내기
- 10. "."뒤에 문자열 부분을 제거하십시오.
- 11. knockoutjs 문자열 부분을 바인딩합니다.
- 12. 문자열 부분을 추출하십시오.
- 13. 문자열 부분을 가져 오십시오.
- 14. Python : 문자열 목록에서 문자열 부분을 제거하십시오.
- 15. 2 개/문자열 사이의 문자열 부분을 가져와야합니다.
- 16. 문자열 값을 Xml의 문자열 배열로 비교하고 반환합니다.
- 17. Java - 문자열 배열을 다른 문자열 배열로 바꾸기
- 18. 문자열 정렬을 문자열 배열로 분할하지 않고
- 19. 문자열 배열을 다른 문자열 배열로 복사 - C
- 20. Android에서 문자열 작성기를 문자열 배열로 변환하려면 어떻게해야합니까?
- 21. 텍스트 파일에서 문자열 배열로 문자열 분할
- 22. 문자열/배열을 작은 문자열/배열로 바꿉니다.
- 23. 단어 배열로 문자열 나누기
- 24. 파일에서 배열로 문자열 읽기
- 25. 배열로 문자열 오프셋
- 26. 문자열 배열로 목록 필터링
- 27. MATLAB에서 문자열 배열로 루핑하기
- 28. C에서 문자열 배열로 작업
- 29. 배열로 분할 문자열
- 30. 문자열을 문자열 배열로 분할
중복 [내가 J2ME에서 문자열을 분할합니까?] (http://stackoverflow.com/questions/200746/how-do-i-split-strings-in-j2me) – angelsl
당신은 싶습니다 자신 만의 사용자 정의 함수를 만들 수 있습니까? Java의 Split 함수를 사용하여 그렇게 할 수 있기 때문입니다. 편집 : 신경 쓰지 마, 방금 J2ME에서이 기능을 사용할 수 없다는 것을 알았습니다. – MrByte
답변으로 확인하십시오 –