今天宠物迷的小编给各位宠物饲养爱好者分享poi 设置字体样式的宠物知识,其中也会对如何设置字体大小(word如何设置字体大小)进行专业的解释,如果能碰巧解决你现在面临的宠物相关问题,别忘了关注本站哦,现在我们开始吧!
因为里面有合并单元格
选那一列 点右键 设置单元格格式 对齐 去掉合并单元格前面的勾 确定
需要按照以下编程进行操作就行: HSSFCellStyle style = (HSSFCellStyle) wb.createCellStyle();style.setFont(font);cell.setCellStyle(style); CellStyle style = workBook.createCellStyle();HSSFFont font = workBook.createFont();font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示style.setFont(font);//单元格样式cell1.setCellStyle(style);//给cell1这个单元格设置样式
1、寻找poi所需要的包,导入到项目中。值得注意的是,不要找poi很老的jar包,很多方法是无效且不好用。建议版本高点。我使用的是poi-3.7版本 2、建立一个导出方法,创建excel表、表的工作空间、单元格 3、单元格中存入值,及改变单元格样式 4、输出到具体的路径。
HSSFRow row = sheet.createRow((short) 0); HSSFCellStyle style = workbook.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); HSSFFont font = workbook.createFont(); style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); font.setFontName("宋体"); font.setFontHeightInPoints((short) 14);// 设置字体大小
你跑下下面的代码试下吧:
public TestExcel(){
createExcelFile();
}
private void createExcelFile() {
HSSFWorkbook hwb = new HSSFWorkbook();
HSSFSheet sheet = hwb.createSheet("test sheet");
//创建一个样式
HSSFCellStyle style = hwb.createCellStyle();
//设置边框样式
style.setBorderTop(HSSFCellStyle.BORDER_THIN);
style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
//设置边框颜色
style.setTopBorderColor(HSSFColor.BLACK.index);
style.setBottomBorderColor(HSSFColor.BLACK.index);
style.setLeftBorderColor(HSSFColor.BLACK.index);
style.setRightBorderColor(HSSFColor.BLACK.index);
for(int j=0;j<5;j++){
HSSFRow row = sheet.createRow(j);
for(int i=0;i<10;i++){
HSSFCell cell = row.createCell(i);
cell.setCellStyle(style);
cell.setCellValue(j+"*"+i);
}
}
File file = new File("./test.xls");
try {
FileOutputStream fos = new FileOutputStream(file);
hwb.write(fos);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
这个不好查,只有给你提供个方向。1,数据能获取到? 2,这个区域的文本可以编辑?3,如果都行,你再测试一下可以往这个区域上写其他的数据吗?检查一下是不是特殊字符什么的原因?
ApachePOI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对MicrosoftOffice格式档案读和写的功能。结构:HSSF-提供读写MicrosoftExcel格式档案的功能。XSSF-提供读写MicrosoftExcelOOXML格式档案的功能。HWPF-提供读写MicrosoftWord格式档案的功能。HSLF-提供读写MicrosoftPowerPoint格式档案的功能。HDGF-提供读写MicrosoftVisio格式档案的功能。创建Excel文档示例1将演示如何利用JakartaPOIAPI创建Excel文档。示例1程序如下:importorg.apache.poi.hssf.usermodel.HSSFWorkbook;importorg.apache.poi.hssf.usermodel.HSSFSheet;importorg.apache.poi.hssf.usermodel.HSSFRow;importorg.apache.poi.hssf.usermodel.HSSFCell;importjava.io.FileOutputStream;publicclassCreateXL{publicstaticStringoutputFile="D:\\test.xls";publicstaticvoidmain(Stringargv[]){try{//创建新的Excel工作簿HSSFWorkbookworkbook=newHSSFWorkbook();//在Excel工作簿中建一工作表,其名为缺省值//如要新建一名为"效益指标"的工作表,其语句为://HSSFSheetsheet=workbook.createSheet("效益指标");HSSFSheetsheet=workbook.createSheet();//在索引0的位置创建行(最顶端的行)HSSFRowrow=sheet.createRow((short)0);//在索引0的位置创建单元格(左上端)HSSFCellcell=row.createCell((short)0);//定义单元格为字符串类型cell.setCellType(HSSFCell.CELL_TYPE_STRING);//在单元格中输入一些内容cell.setCellValue("增加值");//新建一输出文件流FileOutputStreamfOut=newFileOutputStream(outputFile);//把相应的Excel工作簿存盘workbook.write(fOut);fOut.flush();//操作结束,关闭文件fOut.close();System.out.println("文件生成");}catch(Exceptione){System.out.println("已运行xlCreate():"+e);}}}读取Excel文档中的数据示例2将演示如何读取Excel文档中的数据。假定在D盘JTest目录下有一个文件名为test1.xls的Excel文件。示例2程序如下:importorg.apache.poi.hssf.usermodel.HSSFWorkbook;importorg.apache.poi.hssf.usermodel.HSSFSheet;importorg.apache.poi.hssf.usermodel.HSSFRow;importorg.apache.poi.hssf.usermodel.HSSFCell;importjava.io.FileInputStream;publicclassReadXL{publicstaticStringfileToBeRead="D:\\test1.xls";publicstaticvoidmain(Stringargv[]){try{//创建对Excel工作簿文件的引用HSSFWorkbookworkbook=newHSSFWorkbook(newFileInputStream(fileToBeRead));//创建对工作表的引用。//本例是按名引用(让我们假定那张表有着缺省名"Sheet1")HSSFSheetsheet=workbook.getSheet("Sheet1");//也可用getSheetAt(intindex)按索引引用,//在Excel文档中,第一张工作表的缺省索引是0,//其语句为:HSSFSheetsheet=workbook.getSheetAt(0);//读取左上端单元HSSFRowrow=sheet.getRow(0);HSSFCellcell=row.getCell((short)0);//输出单元内容,cell.getStringCellValue()就是取所在单元的值System.out.println("左上端单元是:"+cell.getStringCellValue());}catch(Exceptione){System.out.println("已运行xlRead():"+e);}}}设置单元格格式在这里,我们将只介绍一些和格式设置有关的语句,我们假定workbook就是对一个工作簿的引用。在Java中,第一步要做的就是创建和设置字体和单元格的格式,然后再应用这些格式:1、创建字体,设置其为红色、粗体:HSSFFontfont=workbook.createFont();font.setColor(HSSFFont.COLOR_RED);font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);2、创建格式HSSFCellStylecellStyle=workbook.createCellStyle();cellStyle.setFont(font);3、应用格式HSSFCellcell=row.createCell((short)0);cell.setCellStyle(cellStyle);cell.setCellType(HSSFCell.CELL_TYPE_STRING);cell.setCellValue("标题");处理WORD文档importjava.io.*;importorg.textmining.text.extraction.WordExtractor;importorg.apache.poi.hssf.usermodel.HSSFWorkbook;importorg.apache.poi.hssf.usermodel.HSSFSheet;importorg.apache.poi.hssf.usermodel.HSSFRow;importorg.apache.poi.hssf.usermodel.HSSFCell;publicclassTestPoi{publicTestPoi(){}publicstaticvoidmain(Stringargs[])throwsException{FileInputStreamin=newFileInputStream("D:\\a.doc");WordExtractorextractor=newWordExtractor();Stringstr=extractor.extractText(in);//System.out.println("theresultlengthis"+str.length());System.out.println(str);}}
1. 库的配置
在默认情况下,新创建的excel vba中不支持定义word对象。
所以需要先引入word库,操作步骤如下:
1.1 打开excel vba 界面
1.2 选中其中的一个Module
1.3 选择菜单, Tools --> References
在打开的对话框中选择类似 "Microsoft Word 14.0 Object Library".
1.4 点击OK保存配置。
2. 打开文档
Set wordApplication = CreateObject("Word.Application")
wordApplication.Visible = False
Dim hasOpenDoc As Boolean
hasOpenDoc = IsOpen(filePath) ' is a self-defined function to check file is opend
If hasOpenDoc = True then
Set wordDoc = GetObject(filePath)
End if
If hasOpenDoc = False Then
Set wordDoc = wordApplication.Documents.Open(filePath)
End if
wordDoc.Active
With wordApplication
Dim aParagraph As Word.Paragraph
For Each aParagraph In wordDoc.Paragraphs
' do some thing to every paragraph.
Next aParagraph
End with
wordDoc.Close
Set wordDoc = nothing
' 如下这段代码引用某位牛人的,非常感谢他。由于路径丢失,不能给出链接, 抱歉
' 如下的找寻方式,能够正确的找出文件是否被打开
Function IsOpen(fileName As String) As Boolean
IsOpen = False
Dim findFile As Integer
findFile = FreeFile()
On Error GoTo ErrOpen
Open fileName For Binary Lock Read Write As findFile
Close findFile
Exit Function
ErrOpen:
If Err.Number 70 Then
Msg = "Error # " & Str(Err.Number) & "was generated by " & Err.Source & Chr(13) & Err.Description
MsgBox Msg, "Error", Err.HelpFile, Err.HelpContext
Else
IsOpen = True
End If
End Function
public void getExcel() {
try {
Workbook booka = Workbook.getWorkbook(new File("E:12301.xls"));//得到要输出的excel
Sheet sheeta = booka.getSheet(0);//获取第一个sheet
int b = sheeta.getRows();//获取总行数
for (int i = 0; i < b; i++) {
Cell cell1 = sheeta.getCell(0, i);//依次第一列的第一行,第二行。。。。直到最后一行
String result = cell1.getContents();//取出元素
System.out.println(result);//打印
}
booka.close();//记得关闭,excel是独占文件。
} catch (Exception e) {
System.out.println(e);
}
}
上一篇
什么像什么造句一年级
下一篇
普通话证书全称?