메모장 + + 플러그인 기능 및 Java JNI 기술을 사용 하 여 XML 파일을 처리

출처: 인터넷
작성자: 사용자
키워드: 자바 jni 기술 메모장 + + xml 파일 플러그인 기능

Fastinfoset 표준 XML 직렬화 수단으로, 우수한 지원, 하지만 직접 읽기 도구의 부족을 달성 하는 압축 기준 XML 사용자 발생 어느 정도의 난이도 사용 하 여 메모장 + + 플러그인 기능 및 자바 JNI 기술, 바로 2의 특성을 결합 Fastinfoset 파일에 메모장 + +는 사용자에 의해 편집의 두 번의 문제를 해결 하기 위해 열리고 notepad + +의 XML 파일 편집을 위한 이점은 완전 하 게 악용 될 수 있습니다.

Fastinfoset는 바이너리 수준에서 XML 정보 컬렉션을 처리 하는 방법을 사용자 지정 하 고이 특별 한 serialization 크기와 일반 XML 문서 구문 분석 속도 비해 특별 한 장점이 있다.

메모장 + +는 우수한 http://www.aliyun.com/zixun/aggregation/18444.html "> 텍스트 편집 소프트웨어, 오픈 소스, 무료와 여러 플러그 인 지원 그것에 게 가장 인기 있는 편집 소프트웨어의 하나 강력한 플러그인 기능을 사용 하면 메모장 + +는 다양 한 텍스트 파일을 지원 하기 위해 다음 그림에서와 같이:

그림 1입니다. 메모장 + + 표시 XML

XML에 대 한 레이블 색소와 트리 접기에 우수한 처리 능력은 구현 하지만 notepad + +를 열 수 없습니다 Fastinfoset 문서 직접,이 기사는 메모장 + + 플러그인 기술을 사용 하 여 직접 열기 및 저장을 위해이 문제를 해결 했습니다. Fastinfoset 문서입니다. 다음과 같은 문제가 포함 됩니다.

오픈, 스토리지 Fastinfoset 라이브러리는 자바에 의해 제공 됩니다, 그리고 해야 합니다 코드, 함수 사용에 초점을 포함 하 여 플러그 인 개발 모델을 관리 하기 위해 JNI 호출 구조를 설정, 과정 및 개발 코드, JNI 호출.

Fastinfoset 파일 처리

Fastinfoset 기술의 간략 한 소개

Fastinfoset 중복 태그를 많이 볼 수 다음이 기술을 사용 하 여이 문자를 처리의 XML 파일을 압축 하 고 액세스 속도 향상을 설명한 books.xml 같은 실제 XML 파일에 있는 반복 정보를 많이의 기능을 사용 합니다. 이 기술은 동적 테이블, 원래 단어 세트, 및 외부 어휘를 포함합니다.

열기 및 저장 Fastinfoset

일부 GlassFish에서 기술에 액세스할 수 있습니다 빠른 정보 기술 지원을 받기 위해 http://fi.java.net 자바 기술, Fastinfoset 인터페이스는 자바로 작성 된, 있기 때문에 일부 코드는 다음과 같습니다.

오픈 Fastinfoset 문서


목록 1입니다. 오픈 Fastinfoset 문서


Defaultcontenthandler 작성기 = 새로운 Defaultcontenthandler (); FI SAX 파서 XMLReader saxreader를 인스턴스화할 = 새로운 Saxdocumentparser (); Saxreader.setcontenthandler (작성기); 빠른 정보 문서 InputSource InputSource 구문 분석 = 새로운 InputSource (스트림); Saxreader.parse (InputSource); Fastinfoset 문서
를 저장

목록 2입니다. Fastinfoset 문서
를 저장

마지막 Java.io.StringReader 리더 = 새로운 Java.io.StringReader (savestring); "입력된 스트림에 대 한" XML 문서 InputStream xmldocument를 얻을 새로운 InputStream () = {@Override 공용 int () 죽 읽고 WS IOException {//TODO 자동 생성 메서드 스텁 반환 Reader.read ();}; 빠른 정보 문서 OutputStream fidocument에 대 한 출력 스트림을 설정 = new FileOutputStream (새로운 파일 (파일 경로)); 빠른 infoset 색소폰 시리얼 라이저 Saxdocumentserializer saxdocumentserializer 만들기 = 새로운 Saxdocumentserializer (); 설정 출력 스트림에 Saxdocumentserializer.setoutputstream (fidocument); 인스턴스화할 JAXP의 SAX 파서 공장 SAXParserFactory saxparserfactory = Saxparserfactory.newinstance (); / * 설정된 파서 하는 네임 스페이스 인식 * 매우 할 중요 한 그렇지 않으면 잘못 된 인터넷 문서 것 *는 SAXDOCU에 의해 만들어진 Mentserializer * * Saxparserfactory.setnamespaceaware (TRUE); JAXP의 SAX 파서 saxparser saxparser 인스턴스 = Saxparserfactory.newsaxparser (); 사전 처리기 Saxparser.s 설정Etproperty ("Http://xml.org/sax/properties/lexical-handler", 새로운 Fastinfosetdefaulthandler ()); XML 문서를 구문 분석 하 고 변환 빠른 정보 문서 Saxparser.parse (XmlDocument, Saxdocumentserializer);

관련 문서

연락처

이 페이지의 내용은 인터넷에서 가져온 것이므로 Alibaba Cloud의 공식 의견이 아닙니다.이 페이지에서 언급 된 제품 및 서비스는 Alibaba Cloud와는 관련이 없으므로이 페이지의 내용이 골칫거리 인 경우 저희에게 알려주십시오. 우리는 5 일 근무일 이내에 이메일을 처리 할 것입니다.

커뮤니티에서 표절 사례를 발견한 경우 info-contact@alibabacloud.com 으로 관련 증거를 첨부하여 이메일을 보내주시기 바랍니다. 당사 직원이 영업일 기준 5일 내에 연락 드리도록 하겠습니다.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.