본문 바로가기

Programming/JAVA

java poi 엑셀 하이퍼링크

import java.io.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.usermodel.HSSFHyperlink;
public class CreateCellHyperlink {  
        public static void main(String[] args) throws Exception{
                /* Create Workbook and Worksheet */
                HSSFWorkbook my_workbook = new HSSFWorkbook();
                HSSFSheet my_sheet = my_workbook.createSheet("Cell Hyperlink");
                
                /* Let us create some HSSFHyperlink objects */
                HSSFHyperlink url_link=new HSSFHyperlink(HSSFHyperlink.LINK_URL);
                HSSFHyperlink file_link=new HSSFHyperlink(HSSFHyperlink.LINK_FILE);
                HSSFHyperlink email_link=new HSSFHyperlink(HSSFHyperlink.LINK_EMAIL);
                
                /* Define the data for these hyperlinks */
                url_link.setAddress("http://www.google.com");
                file_link.setAddress("file:///c://test.csv");
                email_link.setAddress("mailto:test@gmail.com");
                
                /* Attach these links to cells */
                Row row = my_sheet.createRow(0);                
                Cell cell = row.createCell(0);
                cell.setCellValue("Take me to Google");         
                cell.setHyperlink(url_link);
                
                row = my_sheet.createRow(1);            
                cell = row.createCell(1);
                cell.setCellValue("Click to Open the file");            
                cell.setHyperlink(file_link);
                
                row = my_sheet.createRow(2);            
                cell = row.createCell(2);
                cell.setCellValue("Send an Email");             
                cell.setHyperlink(email_link);
                
                /* Write changes to the workbook */
                FileOutputStream out = new FileOutputStream(new File("C:\\cell_hyperlink_example.xls"));
                my_workbook.write(out);
                out.close();
        }
}