rolling back r781622
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@781623 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
f7148c9431
commit
b7d7f53ea6
@ -155,7 +155,6 @@ public final class BiffViewer {
|
|||||||
case EndRecord.sid: return new EndRecord(in);
|
case EndRecord.sid: return new EndRecord(in);
|
||||||
case ExtSSTRecord.sid: return new ExtSSTRecord(in);
|
case ExtSSTRecord.sid: return new ExtSSTRecord(in);
|
||||||
case ExtendedFormatRecord.sid: return new ExtendedFormatRecord(in);
|
case ExtendedFormatRecord.sid: return new ExtendedFormatRecord(in);
|
||||||
case ExternalNameRecord.sid: return new ExternalNameRecord(in);
|
|
||||||
case ExternSheetRecord.sid: return new ExternSheetRecord(in);
|
case ExternSheetRecord.sid: return new ExternSheetRecord(in);
|
||||||
case FilePassRecord.sid: return new FilePassRecord(in);
|
case FilePassRecord.sid: return new FilePassRecord(in);
|
||||||
case FileSharingRecord.sid: return new FileSharingRecord(in);
|
case FileSharingRecord.sid: return new FileSharingRecord(in);
|
||||||
@ -359,7 +358,6 @@ public final class BiffViewer {
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
args = new String[] { "--out", "c:/josh/temp/ex47199-23710-twoPSBs-x.xls", };
|
|
||||||
|
|
||||||
CommandArgs cmdArgs;
|
CommandArgs cmdArgs;
|
||||||
try {
|
try {
|
||||||
|
@ -21,10 +21,8 @@ import org.apache.poi.hssf.model.HSSFFormulaParser;
|
|||||||
import org.apache.poi.hssf.model.Workbook;
|
import org.apache.poi.hssf.model.Workbook;
|
||||||
import org.apache.poi.hssf.record.NameRecord;
|
import org.apache.poi.hssf.record.NameRecord;
|
||||||
import org.apache.poi.hssf.record.formula.Ptg;
|
import org.apache.poi.hssf.record.formula.Ptg;
|
||||||
import org.apache.poi.ss.SpreadsheetVersion;
|
|
||||||
import org.apache.poi.ss.formula.FormulaType;
|
import org.apache.poi.ss.formula.FormulaType;
|
||||||
import org.apache.poi.ss.usermodel.Name;
|
import org.apache.poi.ss.usermodel.Name;
|
||||||
import org.apache.poi.ss.util.CellReference;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* High Level Representation of a 'defined name' which could be a 'built-in' name,
|
* High Level Representation of a 'defined name' which could be a 'built-in' name,
|
||||||
@ -135,37 +133,13 @@ public final class HSSFName implements Name {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void validateName(String name){
|
private static void validateName(String name){
|
||||||
if(name.length() == 0) {
|
if(name.length() == 0) throw new IllegalArgumentException("Name cannot be blank");
|
||||||
throw new IllegalArgumentException("Name cannot be blank");
|
|
||||||
}
|
|
||||||
|
|
||||||
char c = name.charAt(0);
|
char c = name.charAt(0);
|
||||||
if(!(c == '_' || Character.isLetter(c)) || name.indexOf(' ') != -1) {
|
if(!(c == '_' || Character.isLetter(c)) || name.indexOf(' ') != -1) {
|
||||||
throw new IllegalArgumentException("Invalid name: '"+name+"'; Names must begin with a letter or underscore and not contain spaces");
|
throw new IllegalArgumentException("Invalid name: '"+name+"'; Names must begin with a letter or underscore and not contain spaces");
|
||||||
}
|
}
|
||||||
if (true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
int looksLikeType = CellReference.classifyCellReference(name, SpreadsheetVersion.EXCEL97);
|
|
||||||
String looksLikeStr;
|
|
||||||
switch (looksLikeType) {
|
|
||||||
case CellReference.NameType.NAMED_RANGE:
|
|
||||||
// all OK
|
|
||||||
return;
|
|
||||||
case CellReference.NameType.CELL:
|
|
||||||
looksLikeStr = "cell reference";
|
|
||||||
break;
|
|
||||||
case CellReference.NameType.COLUMN:
|
|
||||||
looksLikeStr = "column reference";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
looksLikeStr = null;
|
|
||||||
}
|
|
||||||
if (looksLikeType != CellReference.NameType.NAMED_RANGE) {
|
|
||||||
throw new IllegalArgumentException("Specified name '" + name + "' is invalid"
|
|
||||||
+ (looksLikeStr == null ? "" : " because it looks like a " + looksLikeStr));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -557,7 +557,7 @@ public final class FormulaParser {
|
|||||||
// which will either be named ranges or functions
|
// which will either be named ranges or functions
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
|
|
||||||
if (!isValidDefinedNameChar(look)) {
|
if (!Character.isLetter(look)) {
|
||||||
throw expected("number, string, or defined name");
|
throw expected("number, string, or defined name");
|
||||||
}
|
}
|
||||||
while (isValidDefinedNameChar(look)) {
|
while (isValidDefinedNameChar(look)) {
|
||||||
|
@ -149,19 +149,11 @@ public interface Cell {
|
|||||||
void setCellValue(double value);
|
void setCellValue(double value);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Converts the supplied date to its equivalent Excel numeric value and sets
|
* Set a boolean value for the cell
|
||||||
* that into the cell.
|
*
|
||||||
* <p/>
|
* @param value the boolean value to set this cell to. For formulas we'll set the
|
||||||
* <b>Note</b> - There is actually no 'DATE' cell type in Excel. In many
|
* precalculated value, for booleans we'll set its value. For other types we
|
||||||
* cases (when entering date values), Excel automatically adjusts the
|
* will change the cell to a boolean cell and set its value.
|
||||||
* <i>cell style</i> to some date format, creating the illusion that the cell
|
|
||||||
* data type is now something besides {@link Cell#CELL_TYPE_NUMERIC}. POI
|
|
||||||
* does not attempt to replicate this behaviour. To make a numeric cell
|
|
||||||
* display as a date, use {@link #setCellStyle(CellStyle)} etc.
|
|
||||||
*
|
|
||||||
* @param value the numeric value to set this cell to. For formulas we'll set the
|
|
||||||
* precalculated value, for numerics we'll set its value. For other types we
|
|
||||||
* will change the cell to a numerics cell and set its value.
|
|
||||||
*/
|
*/
|
||||||
void setCellValue(Date value);
|
void setCellValue(Date value);
|
||||||
|
|
||||||
|
@ -406,8 +406,8 @@ public interface Sheet extends Iterable<Row> {
|
|||||||
PrintSetup getPrintSetup();
|
PrintSetup getPrintSetup();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the user model for the default document header. If it does not exist, the footer will
|
* Gets the user model for the default document header.
|
||||||
* be created. See {@link #hasHeader()} and {@link #removeHeader()}. <br/>
|
* <p>
|
||||||
* Note that XSSF offers more kinds of document headers than HSSF does
|
* Note that XSSF offers more kinds of document headers than HSSF does
|
||||||
* </p>
|
* </p>
|
||||||
* @return the document header.
|
* @return the document header.
|
||||||
@ -415,33 +415,12 @@ public interface Sheet extends Iterable<Row> {
|
|||||||
Header getHeader();
|
Header getHeader();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return <code>true</code> if this sheet has a header
|
* Gets the user model for the default document footer.
|
||||||
*/
|
|
||||||
// boolean hasHeader();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Removes the header if it exists. If it does not exist, this method does nothing.
|
|
||||||
*/
|
|
||||||
// void removeHeader();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the user model for the default document footer. If it does not exist, the footer will
|
|
||||||
* be created. See {@link #hasFooter()} and {@link #removeFooter()}. <br/>
|
|
||||||
* Note that XSSF offers more kinds of document footers than HSSF does.
|
* Note that XSSF offers more kinds of document footers than HSSF does.
|
||||||
*
|
*
|
||||||
* @return the document footer.
|
* @return the document footer.
|
||||||
*/
|
*/
|
||||||
Footer getFooter();
|
Footer getFooter();
|
||||||
|
|
||||||
/**
|
|
||||||
* @return <code>true</code> if this sheet has a footer
|
|
||||||
*/
|
|
||||||
// boolean hasFooter();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Removes the footer if it exists. If it does not exist, this method does nothing.
|
|
||||||
*/
|
|
||||||
// void removeFooter();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets a flag indicating whether this sheet is selected.
|
* Sets a flag indicating whether this sheet is selected.
|
||||||
|
@ -29,7 +29,6 @@ import org.apache.poi.hssf.record.NameRecord;
|
|||||||
import org.apache.poi.hssf.record.formula.Ptg;
|
import org.apache.poi.hssf.record.formula.Ptg;
|
||||||
import org.apache.poi.ss.formula.FormulaType;
|
import org.apache.poi.ss.formula.FormulaType;
|
||||||
import org.apache.poi.ss.usermodel.BaseTestNamedRange;
|
import org.apache.poi.ss.usermodel.BaseTestNamedRange;
|
||||||
import org.apache.poi.ss.usermodel.Name;
|
|
||||||
import org.apache.poi.ss.util.AreaReference;
|
import org.apache.poi.ss.util.AreaReference;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -251,11 +250,6 @@ public final class TestHSSFName extends BaseTestNamedRange {
|
|||||||
for (int i = 0; i < ptgs.length; i++) {
|
for (int i = 0; i < ptgs.length; i++) {
|
||||||
assertEquals('R', ptgs[i].getRVAType());
|
assertEquals('R', ptgs[i].getRVAType());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testValidNames() {
|
|
||||||
Name n = getTestDataProvider().createWorkbook().createName();
|
|
||||||
n.setNameName("B00000001");
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user