응용 POI,word 2007 html


poi 3.9
http://poi.apache.org/
 
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import org.apache.poi.xwpf.converter.core.FileImageExtractor;
import org.apache.poi.xwpf.converter.core.FileURIResolver;
import org.apache.poi.xwpf.converter.xhtml.XHTMLConverter;
import org.apache.poi.xwpf.converter.xhtml.XHTMLOptions;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFPictureData;
//import org.junit.Assert;
//import org.junit.Test;

public class word07toHtml {

	//@Test
	public static void canExtractImage() throws IOException {
		File f = new File("d:/test/test.docx");
		if (!f.exists()) {
			System.out.println("Sorry File does not Exists!");
		} else {
			if (f.getName().endsWith(".docx") || f.getName().endsWith(".DOCX")) {
				
				// 1) Load DOCX into XWPFDocument
				InputStream in = new FileInputStream(f);
				XWPFDocument document = new XWPFDocument(in);

				// 2) Prepare XHTML options (here we set the IURIResolver to
				// load images from a "word/media" folder)
				File imageFolderFile = new File("d:/test/media");
				XHTMLOptions options = XHTMLOptions.create().URIResolver(
						new FileURIResolver(imageFolderFile));
				options.setExtractor(new FileImageExtractor(imageFolderFile));
				//options.setIgnoreStylesIfUnused(false);
				//options.setFragment(true);
				
				// 3) Convert XWPFDocument to XHTML
				OutputStream out = new FileOutputStream(new File(
						"d:/test/test.htm"));
				XHTMLConverter.getInstance().convert(document, out, options);
			} else {
				System.out.println("Enter only MS Office 2007+ files");
			}
		}
	}
	
	public static void main(String args[]) {
		try {
			canExtractImage();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

 
그 중에서 org.apache.pai.xwpf.converter 는 확장 팩 이 필요 합 니 다.
만약 당신 의 프로젝트 가 Maven 을 사용 하여 다음 과 같은 설정 을 하면 됩 니 다.만약 Maven 을 사용 하지 않 았 다 면 본 논문 첨부 파일 에서 다운로드 하 십시오.
1.0.4 는 poi 3.9 에 대응 합 니 다.
1.0.0 은 poi 3.8 에 대응 합 니 다.
import org.apache.poi.xwpf.converter.xhtml.XHTMLConverter;import org.apache.poi.xwpf.converter.xhtml.XHTMLOptions;
필요 한 jar 패키지
<dependencies>
	<dependency>
		<groupId> fr.opensagres.xdocreport</groupId>
		<artifactId> org.apache.poi.xwpf.converter.core</artifactId>
		<version> 1.0.4</version>
	</dependency>
	<dependency>
		<groupId> fr.opensagres.xdocreport</groupId>
		<artifactId> org.apache.poi.xwpf.converter.xhtml</artifactId>
		<version> 1.0.4</version>
	</dependency>
</dependencies>

 
하면,만약,만약...
java.lang.ClassNotFoundException: org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.CTSectPrImpl$1HeaderReferenceList
ooxml-schemas-1.1.jar 를 추가 하 십시오.
java.lang.ClassNotFoundException: org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.CTBodyImpl$1TblList
ooxml-schemas-1.1.jar 가 필요 합 니 다.
Maven 을 사용 하면 자동 으로 내 려 옵 니 다.Maven 을 사용 하지 않 은 것 은 본문 첨부 파일 에서 ooxml-schemas-1.1.rar 를 다운로드 하 십시오.압축 을 풀 어야 합 니 다.
 
단,변 환 된 table 에 테두리 가 없 는 것 을 발견 하여 해결 해 야 합 니 다.
 
자바 워드 html(03,07)jacob,openoffcie,poi
http://happyqing.iteye.com/blog/2086437

좋은 웹페이지 즐겨찾기