精华内容
下载资源
问答
  • POI导出Excel强制换行

    千次阅读 2016-06-06 16:56:16
    POI导出Excel强制换行HSSFWorkbook wb = new HSSFWorkbook(); HSSFRow headRow = sheet.createRow(1); HSSFCellStyle cellStyle =wb.createCellStyle(); //设置自动换行 cellStyle.setWrapText(true); //具体使用:...

    POI导出Excel强制换行

    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFRow headRow = sheet.createRow(1);
    HSSFCellStyle cellStyle =wb.createCellStyle(); 
    //设置自动换行
    cellStyle.setWrapText(true); 
    
    //具体使用:
    cell.setCellValue(new HSSFRichTextString("呵呵哒\r\n 我是下一行内容了"));

    网上好多答案都是 “/r/n” 你TM是怎么换的我就纳闷了!!!

    // 导出
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    try {
        wb.write(output);
    } catch (IOException e) {
        e.printStackTrace();
    }
    InputStream in = new ByteArrayInputStream(output.toByteArray());
    try {
        return super.downFile(IOUtils.toByteArray(in), "文件名-" + DateUtil.format(new Date(), "yyyyMMdd") + ".xls");
    } catch (IOException e) {
        e.printStackTrace();
        return new ResponseEntity<String>(super.sendMessage(Message.ERROR, e.getLocalizedMessage()),
                getHttpHeaders(), HttpStatus.OK);
    }
    展开全文
  • Java利用POI生成Excel强制换行 2014年05月26日 13:58:00sanyuesan0000阅读数:29371 最近在做导出excel时需要在单元格进行强制换行,查找资料,总结如下: 自动换行的设置: HSSFCellStyle cellStyle=...

    Java利用POI生成Excel强制换行

    2014年05月26日 13:58:00 sanyuesan0000 阅读数:29371

    最近在做导出excel时需要在单元格进行强制换行,查找资料,总结如下:

    自动换行的设置:

     

    
     
    1. HSSFCellStyle cellStyle=workbook.createCellStyle();

    2. cellStyle.setWrapText(true);

    3. cell.setCellStyle(cellStyle);

     

    强制换行:

     

    
     
    1. <pre name="code" class="html">HSSFCell cell = row.createCell((short)0);

    2. cell.setCellStyle(cellStyle);

    3. cell.setCellValue(new HSSFRichTextString("hello/r/n world!"));

     

     

    
     

     

    导出的报表好如下图,编辑框显示的是换行,但是单元格显示不换行:

    修改代码如码如下

     

    
     
    1. HSSFCell cell = row.createCell((short)0);

    2. cellStyle.setWrapText(true);//先设置为自动换行

    3. cell.setCellStyle(cellStyle);

    4. cell.setCellValue(new HSSFRichTextString("hello/r/n world!"));

     

    
     


    导出的报表为:

     

    另注:我原本是打算用sql语句拼接一个含“/r/n”的字段,赋值给单元格,使其强制换行,但是结果只是显示一个字符串,并未换行,最后解决方法是在给单元格赋值的时候拆分字符串,再用str1+"/r/n"+str2拼接,单元格才会正确显示换行。

    不太清楚原因。

    展开全文
  • 使用POI创建一个简单的 myXls.xls 文件 常用的包为 org.apache.poi.hssf.usermodel.*; 例子: import java.io.*; import org.apache.poi.hssf.... 这样就能实现强制换行, 换行后的效里是单元格里强制换行 hello world!

    使用POI创建一个简单的 myXls.xls 文件

    常用的包为 org.apache.poi.hssf.usermodel.*;

    例子:

    import java.io.*;

    import org.apache.poi.hssf.usermodel.*;

    public class ZoomSheet {

    public ZoomSheet() {

    }

    public static void main(String args[])

    throws IOException {

    HSSFWorkbook wb = new HSSFWorkbook();

    HSSFSheet sheet1 = wb.createSheet("new sheet");

    FileOutputStream fileOut = new FileOutputStream("workbook.xls");

    wb.write(fileOut);

    fileOut.close();

    }

    }

    类:

    HSSFWorkbook 创建 xls 的对象; HSSFWorkbook hw = new HSSFWorkbook();

    设置分区显示; hw.setRepeatingRowsAndColumns(sheet的index, 行, 列, 行, 列);

    HSSFSheet 创建 xls 中的sheet(工作表); HSSFSheet sheet = hw.createSheet("sheet1"); sheet1 是 sheet 的名称 可缺省

    设置列高; sheet.setColumnWidth((short)short, (short)short);

    HSSFRow 创建 xls 中的行; HSSFRow row = sheet.createRow(0); 0 表示第一行

    设置行高; row.setHeight((short)short);

    HSSFFont 创建 xls 中的字体; HSSFFont font = hw.createFont();

    设定字体大小; font.setFontHeightInPoints((short)54);

    设定为斜体; font.setItalic(true);

    设定文字删除线; font.setStrikeout(true);

    HSSFCellStyle 设定单元格风格; HSSFCellStyle style = wb.createCellStyle();

    加入字体; style.setFont(font);

    HSSFCell 设定单元格; HSSFCell cell = row.createCell((short)0);

    单元格水平对齐方式; style.setAlignment(align); //单元格水平 0 普通 1 左对齐 2 居中 3 右对齐 4 填充 5 正当 6 居中选择

    单元格垂直对齐方式; style.setVerticalAlignment(align); //单元格垂直 0 居上 1 居中 2 居下 3 正当

    单元格下边框为细线; style.setBorderBottom((short)short);

    同上一命令一同使用,设置颜色; style.setBottomBorderColor((short)short);

    单元格左边框; style.setBorderLeft((short)short);

    style.setLeftBorderColor((short)short);

    单元格右边框; style.setBorderRight((short)short);

    style.setRightBorderColor((short)short);

    单元格上边框; style.setBorderTop((short)short);

    style.setTopBorderColor((short)short);

    单元格字符编号(中文); cell.setEncoding(HSSFCell.ENCODING_UTF_16); //中文

    单元格显示的值; cell.setCellValue("中医药"); 值的类型有:double,int,String,Date,boolean

    单元格背景色; style.setFillForegroundColor((short)short);

    图案类型; style.setFillPattern((short)short);

    单元格合并; sheet.addMergedRegion(new Region(行, (short)列, 行, (short)列));

    单元格风格加入; cell.setCellStyle(style);

    打印设置

    引入包 import org.apache.poi.hssf.usermodel.HSSFPrintSetup;

    创建打印设置对象 HSSFPrintSetup hps = hs.getPrintSetup();

    设置A4纸 hps.setPaperSize((short)9);

    将页面设置为横向打印模式 hps.setLandscape(true);

    设置打印页面为水平居中 sheet.setHorizontallyCenter(true);

    设置打印页面为垂直居中 sheet.setVerticallyCenter(true);

    网上找到的文章都是说在excel里的文字里加上\n,\n\r,\r\n之类,反正各种各样的都有,更奇怪的是还有人说在单元格里加 上

    后来我试过用\r后的效里是生成的文件里,你用打开时,并不会换行,如果你用鼠标在单元格里点一下之后就会自动换行。

    可以通过如下方式进行,

    1. 首先在需要强制换行的单元格里使用poi的样式,并且把样式设定为自动换行

    # HSSFCellStyle cellStyle=workbook.createCellStyle();

    # cellStyle.setWrapText(true);

    # cell.setCellStyle(cellStyle);

    2. 其次是在需要强制换行的单元格,使用\就可以实再强制换行

    1. HSSFCell cell = row.createCell((short)0);

    2. cell.setCellStyle(cellStyle); cell.setCellValue(new HSSFRichTextString("hello\r\n world!"));

    这样就能实现强制换行,

    换行后的效里是单元格里强制换行

    hello

    world!

    展开全文
  • 前一段时间在做一个学校排课系统时,有一个地方需要利用把课程表生成excel汇出给客户,由于之前用excel都只是简单的应用,在单元格里都是用自动换行,而这次可能需要用到手动强制换行。于是我在网上找了一下,网上...

    前一段时间在做一个学校排课系统时,有一个地方需要利用把课程表生成excel汇出给客户,由于之前用excel都只是简单的应用,在单元格里都是用自动换行,而这次可能需要用到手动强制换行。

    于是我在网上找了一下,网上找到的文章都是说在excel里的文字里加上/n,/n/r,/r/n之类,反正各种各样的都有,更奇怪的是还有人说在单元格里加上

    后来我试过用/r后的效里是生成的文件里,你用打开时,并不会换行,如果你用鼠标在单元格里点一下之后就会自动换行。

    后来我琢磨了一下,可以通过如下方式进行,

    1. 首先在需要强制换行的单元格里使用poi的样式,并且把样式设定为自动换行

    HSSFCellStyle cellStyle=workbook.createCellStyle();

    cellStyle.setWrapText(true);

    cell.setCellStyle(cellStyle);

    2. 其次是在需要强制换行的单元格,使用/就可以实再强制换行

    HSSFCell cell = row.createCell((short)0);

    cell.setCellStyle(cellStyle);

    cell.setCellValue(new HSSFRichTextString("hello/r/n world!"));

    这样就能实现强制换行,

    换行后的效里是单元格里强制换行

    //hello

    //world!

    展开全文
  • 使用POI创建一个简单的 myXls.xls 文件 常用的包为 org.apache.poi.hssf.usermodel.*; 例子: import java.io.*; import org.apache.poi.... 这样就能实现强制换行, 换行后的效里是单元格里强制换行 hello world!
  • poi excel 强制换行

    2016-10-25 13:47:34
    首先要设置自动换行 HSSFCell cell = row.createCell(0); //普通写入操作 HSSFCellStyle cellStyle=wb.createCellStyle();  cellStyle.setWrapText(true); //在要换行处添加\n就可以换行了 cell1....
  • POI生成Excel强制换行

    2015-08-19 09:59:00
    自动换行的设置: HSSFCellStyle cellStyle=workbook.createCellStyle(); cellStyle.setWrapText(true);...cell.setCellStyle(cellStyle);...强制换行: <pre name="code" class="html...
  • Java之POI生成Excel强制换行-yellowcong

    千次阅读 2017-08-22 15:42:03
    JAVA通过poi来操作Excel进行换行操作,通过设定CellStyle样式中的setWrapText属性为true,就可以通过\r\n的方式进行Excel的格子内换行了,同时说一下,在Excel中,设定行高的操作,需要注意设定行高,不能直接写成...
  • 2. 其次是在需要强制换行的单元格,使用/就可以实再强制换行   1. HSSFCell cell = row.createCell((short)0);   2. cell.setCellStyle(cellStyle); cell.setCellValue(new HSSFRichTextString("hello/r/n ...
  • 2. 其次是在需要强制换行的单元格,使用\就可以实再强制换行 1. HSSFCell cell = row.createCell((short)0); 2. cell.setCellStyle(cellStyle); cell.setCellValue(new HSSFRichTextString("hello \r\n world!"))...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 256
精华内容 102
关键字:

excel强制换行