java eventusermodel_Java XSSFReader.getSharedStringsTable方法代碼示例

本文整理匯總了Java中org.apache.poi.xssf.eventusermodel.XSSFReader.getSharedStringsTable方法的典型用法代碼示例。如果您正苦於以下問題:Java XSSFReader.getSharedStringsTable方法的具體用法?Java XSSFReader.getSharedStringsTable怎麽用?Java XSSFReader.getSharedStringsTable使用的例子?那麽恭喜您, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.poi.xssf.eventusermodel.XSSFReader的用法示例。

在下文中一共展示了XSSFReader.getSharedStringsTable方法的21個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於我們的係統推薦出更棒的Java代碼示例。

示例1: process

​點讚 4

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 遍曆工作簿中所有的電子表格

*

* @param filename

* @throws Exception

*/

public void process(String filename) throws Exception {

OPCPackage pkg = OPCPackage.open(filename);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

Iterator sheets = r.getSheetsData();

while (sheets.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

}

開發者ID:guokezheng,項目名稱:automat,代碼行數:22,

示例2: process

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 遍曆工作簿中所有的電子表格

*

* @param filename

* @throws Exception

*/

public void process(InputStream stream) throws Exception {

OPCPackage pkg = OPCPackage.open(stream);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

Iterator sheets = r.getSheetsData();

while (sheets.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

}

開發者ID:tb544731152,項目名稱:iBase4J,代碼行數:22,

示例3: process

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 遍曆工作簿中所有的電子表格

*

* @param filename string

* @throws Exception if an error occurred

*/

public void process(String filename) throws Exception {

OPCPackage pkg = OPCPackage.open(filename);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

Iterator sheets = r.getSheetsData();

while (sheets.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

}

開發者ID:iBase4J,項目名稱:iBase4J-Common,代碼行數:22,

示例4: processAll

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

private void processAll(OPCPackage pkg)

throws IOException, OpenXML4JException, InvalidFormatException, SAXException {

XSSFReader xssfReader = new XSSFReader(pkg);

mStylesTable = xssfReader.getStylesTable();

SharedStringsTable sst = xssfReader.getSharedStringsTable();

XMLReader parser = this.fetchSheetParser(sst);

Iterator sheets = xssfReader.getSheetsData();

while (sheets.hasNext()) {

mCurrentRowIndex = 0;

mSheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

pkg.close();

}

開發者ID:wuwz,項目名稱:ExcelKit,代碼行數:18,

示例5: processBySheet

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

private void processBySheet(int sheetIndex, OPCPackage pkg)

throws IOException, OpenXML4JException, InvalidFormatException, SAXException {

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

// rId2 found by processing the Workbook

// 根據 rId# 或 rSheet# 查找sheet

InputStream sheet = r.getSheet("rId" + (sheetIndex + 1));

mSheetIndex++;

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

pkg.close();

}

開發者ID:wuwz,項目名稱:ExcelKit,代碼行數:17,

示例6: execute

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public void execute(InputStream inputStream, IParseExcelRowMapper parseExcelRowMapper) throws Exception {

OPCPackage pkg = OPCPackage.open(inputStream);

XSSFReader xssfReader = new XSSFReader(pkg);

sst = xssfReader.getSharedStringsTable();

stylesTable = xssfReader.getStylesTable();

SAXParserFactory saxFactory = SAXParserFactory.newInstance();

SAXParser saxParser = saxFactory.newSAXParser();

XMLReader parser = saxParser.getXMLReader();

parser.setContentHandler(new XSSFParserHandler());

this.parseExcelRowMapper = parseExcelRowMapper;

XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();

while (iter.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = iter.next();

sheetName = iter.getSheetName();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

}

開發者ID:bsteker,項目名稱:bdf2,代碼行數:26,

示例7: readExcel

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

private List readExcel(OPCPackage opcPackage, Class> pojoClass, ImportParams params,

ISaxRowRead rowRead, IExcelReadRowHanlder hanlder) {

try {

XSSFReader xssfReader = new XSSFReader(opcPackage);

SharedStringsTable sst = xssfReader.getSharedStringsTable();

if (rowRead == null) {

rowRead = new SaxRowRead(pojoClass, params, hanlder);

}

XMLReader parser = fetchSheetParser(sst, rowRead);

Iterator sheets = xssfReader.getSheetsData();

int sheetIndex = 0;

while (sheets.hasNext() && sheetIndex < params.getSheetNum()) {

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

return rowRead.getList();

} catch (Exception e) {

LOGGER.error(e.getMessage(), e);

throw new ExcelImportException("SAX導入數據失敗");

}

}

開發者ID:rushingpig,項目名稱:poix,代碼行數:25,

示例8: processOneSheet

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public void processOneSheet(String filename, int sheetId) throws Exception {

OPCPackage pkg = OPCPackage.open(filename);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

// rId2 found by processing the Workbook

// 根據 rId# 或 rSheet# 查找sheet

InputStream sheet2 = r.getSheet("rId" + sheetId);

sheetIndex++;

InputSource sheetSource = new InputSource(sheet2);

parser.parse(sheetSource);

sheet2.close();

pkg.close();

}

開發者ID:RayleighChen,項目名稱:Improve,代碼行數:17,

示例9: process

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 遍曆 excel 文件

*/

public void process(String filename) throws Exception {

OPCPackage pkg = OPCPackage.open(filename);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

Iterator sheets = r.getSheetsData();

while (sheets.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

pkg.close();

}

開發者ID:RayleighChen,項目名稱:Improve,代碼行數:22,

示例10: readOneSheet

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 讀取第一個工作簿的入口方法

* @param path

*/

public List> readOneSheet(InputStream input,String excelType) throws Exception {

OPCPackage pkg = OPCPackage.open(input);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

if(excelType.equals(Constant.ENITY_TYPE_ROLEPERSIONAL)){

lists = new ArrayList();

}

XMLReader parser = fetchSheetParser(sst);

InputStream sheet = r.getSheet("rId1");

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

if(excelType.equals(Constant.ENITY_TYPE_ROLEPERSIONAL)){

return lists;

}

sheet.close();

return lists;

}

開發者ID:lz84,項目名稱:bachelor,代碼行數:30,

示例11: process

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 讀取所有工作簿的入口方法

* @param path

* @throws Exception

*/

public void process(String path) throws Exception {

OPCPackage pkg = OPCPackage.open(path);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

Iterator sheets = r.getSheetsData();

while (sheets.hasNext()) {

curRow = 0;

sheetIndex++;

InputStream sheet = sheets.next();

InputSource sheetSource = new InputSource(sheet);

parser.parse(sheetSource);

sheet.close();

}

}

開發者ID:lz84,項目名稱:bachelor,代碼行數:23,

示例12: XlsxSheetToRowsHandler

​點讚 3

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public XlsxSheetToRowsHandler(XlsxRowCallback callback, XSSFReader xssfReader, ExcelConfiguration configuration)

throws Exception {

_callback = callback;

_configuration = configuration;

_sharedStringTable = xssfReader.getSharedStringsTable();

_stylesTable = xssfReader.getStylesTable();

_value = new StringBuilder();

_style = new StyleBuilder();

_rowValues = new ArrayList();

_styles = new ArrayList

_rowNumber = -1;

_inCell = false;

_inFormula = false;

}

開發者ID:apache,項目名稱:metamodel,代碼行數:17,

示例13: processOneSheet

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* 隻遍曆一個電子表格,其中sheetId為要遍曆的sheet索引,從1開始,1-3

*

* @param filename

* @param sheetId

* @throws Exception

*/

public void processOneSheet(String filename, int sheetId) throws Exception {

OPCPackage pkg = OPCPackage.open(filename);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst);

// 根據 rId# 或 rSheet# 查找sheet

InputStream sheet2 = r.getSheet("rId" + sheetId);

sheetIndex++;

InputSource sheetSource = new InputSource(sheet2);

parser.parse(sheetSource);

sheet2.close();

}

開發者ID:iBase4J,項目名稱:iBase4J-Common,代碼行數:21,

示例14: StAXBasedParser

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

/**

* Create instance

* @param inputStream sheet input stream

* @param pluginConfig config options

* @param writer {@link VectorContainerWriter} for writing values into vectors.

* @param managedBuf Workspace buffer.

*/

public StAXBasedParser(final InputStream inputStream, final ExcelFormatPluginConfig pluginConfig,

final VectorContainerWriter writer, final ArrowBuf managedBuf,

final HashSet columnsToProject) throws Exception {

pkgInputStream = OPCPackage.open(inputStream);

this.writer = writer.rootAsMap();

this.managedBuf = managedBuf;

final XSSFReader xssfReader = new XSSFReader(pkgInputStream);

// Find the sheet id of the given sheet name in workbook

try (final InputStream wbInputStream = xssfReader.getWorkbookData()) {

final String sheetId = ExcelUtil.getSheetId(wbInputStream, pluginConfig.sheet);

if (sheetId == null) {

throw new SheetNotFoundException();

}

// Open the InputStream for sheet

sheetInputStream = xssfReader.getSheet(sheetId);

}

// WARNING: XSSFReader can actually return null instances of sst and styles

sst = xssfReader.getSharedStringsTable();

styles = checkNotNull(xssfReader.getStylesTable(), "Expected a valid styles table instance");

init(pluginConfig.extractHeader, pluginConfig.hasMergedCells);

this.columnsToProject = columnsToProject;

}

開發者ID:dremio,項目名稱:dremio-oss,代碼行數:37,

示例15: processSheet

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public void processSheet(InputStream inputStream, DataTable dataTable, PrintWriter tempOut) throws Exception {

dbglog.info("entering processSheet");

OPCPackage pkg = OPCPackage.open(inputStream);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XMLReader parser = fetchSheetParser(sst, dataTable, tempOut);

// rId2 found by processing the Workbook

// Seems to either be rId# or rSheet#

InputStream sheet1 = r.getSheet("rId1");

InputSource sheetSource = new InputSource(sheet1);

parser.parse(sheetSource);

sheet1.close();

}

開發者ID:pengchengluo,項目名稱:Peking-University-Open-Research-Data-Platform,代碼行數:16,

示例16: consume

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public void consume(File data)

{

try

{

Map refIdMap = new HashMap();

OPCPackage opcPackage = OPCPackage.open(data);

XSSFReader xssfReader = new XSSFReader(opcPackage);

SharedStringsTable sharedStringsTable = xssfReader.getSharedStringsTable();

XMLReader workbookParser = XMLReaderFactory.createXMLReader("org.apache.xerces.parsers.SAXParser");

ContentHandler workbookHandler = new WorkbookHandler(refIdMap);

workbookParser.setContentHandler(workbookHandler);

InputStream workbookInputStream = xssfReader.getWorkbookData();

InputSource workbookSource = new InputSource(workbookInputStream);

workbookParser.parse(workbookSource);

workbookInputStream.close();

XMLReader sheetParser = XMLReaderFactory.createXMLReader("org.apache.xerces.parsers.SAXParser");

ContentHandler sheetHandler = new SheetHandler(sharedStringsTable);

sheetParser.setContentHandler(sheetHandler);

Iterator sheetInputStreamIterator = xssfReader.getSheetsData();

while (sheetInputStreamIterator.hasNext())

{

InputStream sheetInputStream = sheetInputStreamIterator.next();

InputSource sheetSource = new InputSource(sheetInputStream);

sheetParser.parse(sheetSource);

sheetInputStream.close();

}

}

catch (Throwable throwable)

{

logger.log(Level.WARNING, "Problem processing XSSF file \"" + data.getAbsolutePath() + "\"", throwable);

}

}

開發者ID:arjuna-technologies,項目名稱:Apache-POI_DataBroker_PlugIn,代碼行數:38,

示例17: setUp

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

@Before

public void setUp() throws Exception {

OPCPackage pkg = OPCPackage.open(StreamingSheetTest.class.getResourceAsStream("../dates.xlsx"));

XSSFReader reader = new XSSFReader(pkg);

SharedStringsTable sst = reader.getSharedStringsTable();

StylesTable styles = reader.getStylesTable();

Iterator iter = reader.getSheetsData();

XMLEventReader parser = XMLInputFactory.newInstance().createXMLEventReader(iter.next());

final StreamingSheetReader streamingSheetReader = new StreamingSheetReader(sst, styles, parser, 10);

streamingSheet = new StreamingSheet("name", streamingSheetReader);

}

開發者ID:Talend,項目名稱:data-prep,代碼行數:14,

示例18: loadData

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

@Override

public void loadData(List> files, Importer importer) throws InvalidFileException, IOException {

try {

RowCellHandler rowCellHandler = makeRowCellHandler(importer);

SAXParserFactory saxFactory = SAXParserFactory.newInstance();

saxFactory.setNamespaceAware(true);

for (Tuple file : files) {

OPCPackage pkg = OPCPackage.open(file.getRight().getPath());

XSSFReader xssfReader = new XSSFReader(pkg);

final SharedStringsTable sharedStringsTable = xssfReader.getSharedStringsTable();

XSSFReader.SheetIterator worksheets = (XSSFReader.SheetIterator) xssfReader.getSheetsData();

while (worksheets.hasNext()) {

final InputStream sheet = worksheets.next();

XMLReader sheetParser = saxFactory.newSAXParser().getXMLReader();

sheetParser.setContentHandler(new SheetXmlParser(sharedStringsTable, rowCellHandler));

rowCellHandler.start(worksheets.getSheetName());

sheetParser.parse(new InputSource(sheet));

rowCellHandler.finish();

}

}

} catch (SAXException | OpenXML4JException | ParserConfigurationException e) {

throw new InvalidFileException("Not a valid Excel file", e);

}

}

開發者ID:HuygensING,項目名稱:timbuctoo,代碼行數:29,

示例19: run

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public void run() throws IOException, SAXException, OpenXML4JException {

OPCPackage pkg = null;

XSSFWorkbook wb = null;

InputStream is = null;

try {

pkg = OPCPackage.open(file);

wb = new XSSFWorkbook(file);

XSSFReader r = new XSSFReader(pkg);

SharedStringsTable sst = r.getSharedStringsTable();

XSSFSheet sheet = wb.getSheet(sheetName);

String rId = wb.getRelationId(sheet);

is = r.getSheet(rId);

InputSource sheetSource = new InputSource(is);

XMLReader parser = XMLReaderFactory.createXMLReader("com.sun.org.apache.xerces.internal.parsers.SAXParser");

handler = new SheetHandler(sst);

parser.setContentHandler(handler);

parser.parse(sheetSource);

// last line (consider header line for offset)

if (++handler.lineIndex > skip + offset + 1) {

Log log = new SimpleLog(new Date(), logger == null ? null : logger.getFullName(), handler.data);

pipe.onLog(logger, log);

handler.outputCount++;

}

handler.totalCount++;

} catch (SAXException e) {

if (e.getMessage() == null || !e.getMessage().contains("max limit"))

throw e;

} finally {

Io.ensureClose(is);

Io.ensureClose(pkg);

Io.ensureClose(wb);

}

}

開發者ID:araqne,項目名稱:logdb,代碼行數:39,

示例20: readReader

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

@Override

protected void readReader(XSSFReader reader) throws Exception {

try {

ssTable = reader.getSharedStringsTable();

String sheetId = getSheetId(reader);

readSheet(reader, sheetId);

} finally {

close();

}

}

開發者ID:Depter,項目名稱:JRLib,代碼行數:11,

示例21: StaxPoiSheet

​點讚 2

import org.apache.poi.xssf.eventusermodel.XSSFReader; //導入方法依賴的package包/類

public StaxPoiSheet( XSSFReader reader, String sheetName, String sheetID )

throws InvalidFormatException, IOException, XMLStreamException {

this.sheetName = sheetName;

xssfReader = reader;

sheetId = sheetID;

sst = reader.getSharedStringsTable();

styles = reader.getStylesTable();

sheetStream = reader.getSheet( sheetID );

XMLInputFactory factory = XMLInputFactory.newInstance();

sheetReader = factory.createXMLStreamReader( sheetStream );

headerRow = new ArrayList();

while ( sheetReader.hasNext() ) {

int event = sheetReader.next();

if ( event == XMLStreamConstants.START_ELEMENT && sheetReader.getLocalName().equals( "dimension" ) ) {

String dim = sheetReader.getAttributeValue( null, "ref" );

// empty sheets have dimension with no range

if ( StringUtils.contains( dim, ':' ) ) {

dim = dim.split( ":" )[1];

numRows = StaxUtil.extractRowNumber( dim );

numCols = StaxUtil.extractColumnNumber( dim );

}

}

if ( event == XMLStreamConstants.START_ELEMENT && sheetReader.getLocalName().equals( "row" ) ) {

currentRow = Integer.parseInt( sheetReader.getAttributeValue( null, "r" ) );

firstRow = currentRow;

// calculate the number of columns in the header row

while ( sheetReader.hasNext() ) {

event = sheetReader.next();

if ( event == XMLStreamConstants.END_ELEMENT && sheetReader.getLocalName().equals( "row" ) ) {

// if the row has ended, break the inner while loop

break;

}

if ( event == XMLStreamConstants.START_ELEMENT && sheetReader.getLocalName().equals( "c" ) ) {

String attributeValue = sheetReader.getAttributeValue( null, "t" );

if ( attributeValue != null && attributeValue.equals( "s" ) ) {

// only if the type of the cell is string, we continue

while ( sheetReader.hasNext() ) {

event = sheetReader.next();

if ( event == XMLStreamConstants.START_ELEMENT && sheetReader.getLocalName().equals( "v" ) ) {

int idx = Integer.parseInt( sheetReader.getElementText() );

String content = new XSSFRichTextString( sst.getEntryAt( idx ) ).toString();

headerRow.add( content );

break;

}

}

} else {

break;

}

}

}

// we have parsed the header row

break;

}

}

}

開發者ID:pentaho,項目名稱:pentaho-kettle,代碼行數:57,

注:本文中的org.apache.poi.xssf.eventusermodel.XSSFReader.getSharedStringsTable方法示例整理自Github/MSDocs等源碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。


版权声明:本文为weixin_33199315原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。