2014-07-09 5 views
0

Excel 셀에 Html Formatted 값을 표시하고 싶습니다. HTML 태그에는 정렬되지 않은 순서화 된 글 머리표, 기울임 꼴 및 밑줄 및 단락이 포함됩니다.HTML은 Apache POI 1을 사용하여 Excel에 셀 값을 지정했습니다.

apache poi excel의 셀 값에 서식이 지정된 값을 나타내는 무언가에 HTML 태그를 전달하고 싶습니다.

XSSFWorkbook workBook = null; 
String value = "<html>My String</html>"; 
workBook = new XSSFWorkbook(); 
XSSFCell cell = row.createCell(columnIndex); 
XSSFRichTextString textString = new XSSFRichTextString (value); 
cell.setCellValue(value); 

입력 데이터 :

<ul> 
    <li> Iam <strong>Bold </strong> and Iam <u>Underlined </u> </li> 
    <li> Just a Normal Text </li> 
    <li> Iam <b> Bold </b> <em>and italic </em> <u> and underlined </u> </li> 
    </ul> 

예상 출력 :

. Iam 굵게 및 Iam 기울임 꼴
. Iam 굵게 및 lam 기울임 꼴 및 밑줄
. 그냥 보통 텍스트

모든 API는 Aspose 또는 Itext 또는 다른 API를 제공합니다.

+0

가능한 중복 http://stackoverflow.com/questions/24613916/apache-poi-excel-text-formatting-through-xssfrichtexstring-and-jsoup) – Mirco

답변

0

XSSFFont을 만들고 설정하여 POI에서 문자열의 서식을 지정할 수 있습니다. https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFFont.html 여기서 setBold (true) 등을 사용할 수 있습니다.

XSSFRichTextString에 글꼴을 적용하기 만하면됩니다. 문자열의 일부분에만 글꼴을 적용 할 수도 있습니다. 문자열에 HTML을 사용

XSSFWorkbook wb=new XSSFWorkbook(); 
XSSFFont font = wb.createFont(); 
font.setBold(true); 
font.setItalic(true); 
new XSSFRichTextString().applyFont(font); 

내가 Aspose에서 소셜 미디어 개발자로 일하고 원하는 결과가 자바에 대한 Aspose.Cells를 사용하여 쉽게 달성 할 수

+0

아니요 .. 전체 텍스트에서 하위 텍스트는 굵게 표시 될 수 있고 다른 부분은 기울임 꼴을 포함 할 수 있습니다 .. 등등 ... HTML 태그는 다음과 같이 표시됩니다. plz 업데이트 된 질문보기 – LazyGuy

+0

글쎄요 차이점 ? 이렇게하면 문자열의 전체 텍스트가 굵게 표시되고 기울임 꼴이됩니다. 목록 등 html에서 POI로 가능하지 않을 것 같다 – Mirco

+0

전체 텍스트 굵게 기울임 꼴로 .. 문자열의 부분을 찾고 아니에요 그리고 그것도 다양하고 안쪽 항목이 다릅니다. XSSFRichTextString의 applyFont (startIndex, endIndex, font) 메소드에 텍스트를 굵은 기울임 꼴, 기울임 꼴 또는 밑줄 또는 두 개 또는 여러 개로 구분하지 않고 어떻게 전달할 수 있습니까? 태그가 다를 수 있습니다. 그래서 문제가되었습니다. 완전한 텍스트라면, 우리는 그것을 할 수 있습니다. – LazyGuy

0

불가능할 것으로 보인다. 다음 코드를 확인하십시오.

//Instantiate the workbook object                  
Workbook workbook = new Workbook();                  

//Get first worksheet of workbook                  
Worksheet worksheet1 = workbook.getWorksheets().get(0);             

//Get Cells in a Worksheet                    
Cells cells = worksheet1.getCells();                  

//Get the individual cell                    
Cell cell = cells.get("A1");                    

String htmlstring = "<ul><li> I am <strong>Bold </strong> and Iam <u>Underlined </u> " +     
     "</li><li> Just a Normal Text </li>" +               
"<li> Iam <b> Bold </b> <i>and italic </i> <u> and underlined </u></li></ul>";       

//Setting Cell Style                      
Style style = new Style();                    
style.setHorizontalAlignment(TextAlignmentType.LEFT);             
style.setTextWrapped(true);                    
cell.setStyle(style);                     

//Set HTML string as Cell Text                   
cell.setHtmlString(htmlstring);                   

worksheet1.autoFitColumns();                    
worksheet1.autoFitRows();                    

//Save the workbook.                      
workbook.save("c:\\HtmlStringtest.xlsx");               
([XSSFRichTexString 및 Jsoup을 통해 서식 아파치 POI 엑셀 텍스트]의
+0

Okie .. 어떻게 Java 용 Aspose.cells를 얻을 수 있습니까? 그것은인가 된 오픈 소스인가? 그것을 얻기 전에 면허증이 위의 코드가 내 요구 사항에 대한 작동 여부를 테스트하고 싶습니다. 그래서 테스트 목적으로 어떻게 aspose.cells을 얻을 수 있습니다. purpsose 테스트를 위해 aspose.cells jar 파일을 얻을 수 있습니까? – LazyGuy

+0

Aspose.Cells for Java는 라이센스가 부여 된 API입니다. 무료 트레일 버전을 다운로드하고 http://goo.gl/Hhrwkd 링크를 사용하여 원하는 기능을 테스트 할 수 있습니다. –