本文整理匯總了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;未經允許,請勿轉載。