0
오픈 오피스 용 자바에서 확장 기능을 만들고 있는데, 각 문자마다 뭔가를해야합니다. 오픈 오피스 자바 API에 비슷한는오픈 오피스에서 각 문자를 탐색하는 방법
foreach item in doc.characters
있습니까 :
단어에내가 사용을 할 수 있었어요?
오픈 오피스 용 자바에서 확장 기능을 만들고 있는데, 각 문자마다 뭔가를해야합니다. 오픈 오피스 자바 API에 비슷한는오픈 오피스에서 각 문자를 탐색하는 방법
foreach item in doc.characters
있습니까 :
단어에내가 사용을 할 수 있었어요?
다음은 문서의 모든 문자를 계산하는 간단한 예입니다.
xText = xTextDocument.getText();
XTextCursor xTextCursor = xText.createTextCursorByRange(xText.getStart());
int num_chars = 0;
while (xTextCursor.goRight((short)1, false)) { num_chars++; }
System.out.println("Found " + num_chars + " characters.");
같은 테이블 또는 프레임과 같은 개체가 그러나 있다면, 하나의 텍스트 커서가 작동하지 않습니다. view cursor을 사용하면 테이블과 프레임을 처리하지만 속도는 훨씬 느려집니다. 보다 완전한 예제는 7.14.2의 Andrew Pitonyak's macro document을 참조하십시오.
또 다른 방법은 Andrew 문서의 섹션 7.16.3 에서처럼 문서의 모든 텍스트 내용을 열거하는 것입니다. Java 관련 정보는 Dev guide에도 있습니다. 그런 다음 각 텍스트 부분에 대해 텍스트 커서를 작성하여 반복하고 합리적으로 빠릅니다.
이 코드에는 단어와 공백의 수는 있지만 문자의 수는 없습니다. 어떻게 변경할 수 있습니까? – Benjamin
이 코드를 테스트했을 때 예상대로 문자 수가 표시되었습니다. [goRight()] (https://www.openoffice.org/api/docs/common/ref/com/sun/star/text/XTextCursor.html#goRight)를 호출하면 한 번에'nCount' 문자가 사용됩니다. 아마도 대신 [단어 커서] (https://www.openoffice.org/api/docs/common/ref/com/sun/star/text/XWordCursor.html)를 사용 했습니까? –
위와 똑같은 코드 (더하기 코드)를 사용하고 문자 대신 단어와 공백을 계산합니다. – Benjamin