일부 데이터 (정확한 문자)가 포함 된 ByteBuffer가 있습니다. 첫 번째 공백 문자까지 바이트 만 시작하도록 파싱하려면 어떻게해야합니까?공백을 찾는 ByteBuffer 구문 분석
답변
공백이 생길 때까지 가장 간단한 방법으로 ByteBuffer를 던졌습니다. 예 :
ByteBuffer buffer =
StringBuilder sb = new StringBuilder();
char ch;
while(buffer.remaining() > 0 && !Character.isWhitespace(ch = (char) buffer.get()))
sb.append(ch);
더 효율적인 방법이 있지만 가장 간단한 방법 일 수 있습니다.
문자의 크기는이 문제가됩니까? getchar()을 사용하는 것이 더 나은 방법일까요? –
@Jacob : 네, 크기가 중요합니다 :-). 'get()'은 버퍼의 각 바이트가 ASCII 문자 (엄격한 ASCII, 즉 값 <128)를 나타내는 경우 정확합니다. 'getChar()'는 UCS-2로 인코딩 된 데이터입니다 (저는 믿습니다). – sleske
get()은() & 0xFF를 얻으면 높은 비트가 없다고 가정해도 작동합니다 –
getChar()
메서드를 사용하면 다음 문자가 꺼내집니다. 그것을 확인하고 공백 문자를 확인하십시오. 그것을 읽지 마라.
-1 인코딩을 모르면'getChar()'가 무엇을 줄지 알 수 없습니다. – sleske
+1 여기서는 인코딩이 부적합합니다. getChar()가 반환 할 내용을 정확히 알고 있습니다. getChar()는 현재 바이트 순서에 따라 2 바이트를 제공합니다. 이 두 바이트가 "공백"과 일치하는지 여부는 귀하에게 달려 있습니다. jzd의 코멘트는 나에게 잘 보인다. (허락되지 않은 공백 체크로 꽤 많은 문제가 옮겨졌지만 여전히 정확합니다.) –
- 1. REBOL 구문 분석 : 공백을 취급하고 나는 15 장 읽어 VAR
- 2. 느린 xml 구문 분석
- 3. apk 파일 구문 분석
- 4. bash를 사용하여 첫 번째 고유 값을 찾는 파일 구문 분석
- 5. 구문 오류가있는 코드 구문 분석
- 6. 구문 분석/구문 분석이란 무엇입니까?
- 7. 구문 분석 오류 : 구문 오류
- 8. Java의 Infinite ByteBuffer
- 9. ByteBuffer recycling class
- 10. 파이썬 문자열 구문 분석 : 공간
- 11. 공백을 무시하고 REXML 문서를 구문 분석하십시오.
- 12. 여러 속성을 찾는 구문
- 13. XML 구문 분석 - 치명적인 오류
- 14. 텍스트 구문 분석, 조건부 텍스트
- 15. VB6 : HTML 구문 분석 용 (HTML 구문 분석 용)
- 16. libxml2를의 HTML 구문 분석 내가 HTML을 구문 분석 libxml2를 사용하고
- 17. PHP를 구문 분석 한 다음 asp.net을 구문 분석
- 18. 구문 분석 오류 : 구문 분석 오류, PHP 루프 예상
- 19. 파이썬 docstring 구문 분석 (일반적으로 파이썬에서 언어 구문 분석)
- 20. xslt 2.0으로 BBCode 구문 분석
- 21. dict에 구문 분석 문자열
- 22. 정규식 HTML을 구문 분석
- 23. PHP 구문 분석 CXML
- 24. HTML 구문 분석 - Asp.net
- 25. iframe에서 xml 구문 분석
- 26. 행의 구문 분석
- 27. SQL에서 구문 분석 연도
- 28. NSDictionary로 구문 분석 (NSString)
- 29. SQL 구문 분석 텍스트
- 30. Python XML 구문 분석
1 바이트 또는 2 바이트 문자를 사용 하시겠습니까? –
문자 인코딩은 무엇입니까? – finnw
아스키, 1 바이트 문자 – mkrenge