2014-03-03 7 views
-1

에 최적으로 문자열을 분할 어떻게 보이는 문자열이 있습니다 |에 의해 분리에1024 숯불 공간

file1.txt:1,2,3|file2.txt:4,5,6,12,13,14|file3:7,| ......... 

정보의 단위를하고 그대로 유지한다. 위의 String이 2100 자 길이라고 가정합니다. 나는 |에 문자열을 분할하고 파티션에 최대 1024자를 넣고 싶습니다. 나는 아파치 코 몬즈 StringUtils.split()를 사용하고 있지만 최적의 솔루션을 마련 할 수없는입니다

............ |file103:223 

: 같은 1 파티션해야의 마지막 문자가 보인다. 어떤 도움을 주셔서 감사합니다.

+0

정규식으로 갈 수 있습니까? –

답변

1

분할 기능은 아마도 1024 자 제한을 신경 쓰지 않을 것입니다. 내 머리 위로 떨어져 두 옵션은

  1. 시작 인덱스 = endIndex에 = 1024 0
  2. 에서 endIndex = string.lastIndexOf ('|', endIndex에)
  3. partitionList.add (string.subString (시작 인덱스, endIndex에))
  4. 에서 startIndex = endIndex에
  5. 에서 endIndex + = 1,024
  6. 오도 3 :

또는 이와 비슷한 내용을 하나씩 확인해보십시오. 또는 더 간단한 것을 수행하십시오.

  1. 문자열을 '|'로 분리하십시오.
  2. 각 조각의 크기를 세어 길이가 1024자를 넘지 않는 조각을 연결하십시오.