acoliver 02/05/14 17:56:18
Modified: src/scratchpad/src/org/apache/poi/generator
FieldIterator.java RecordUtil.java
Log:
Support test expression
Revision Changes Path
1.7 +11 -4
jakarta-poi/src/scratchpad/src/org/apache/poi/generator/FieldIterator.java
Index: FieldIterator.java
===================================================================
RCS file:
/home/cvs/jakarta-poi/src/scratchpad/src/org/apache/poi/generator/FieldIterator.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- FieldIterator.java 19 Apr 2002 10:48:25 -0000 1.6
+++ FieldIterator.java 15 May 2002 00:56:18 -0000 1.7
@@ -74,6 +74,12 @@
offset = 0;
}
+ /**
+ * This utility function returns a fill method entry for a given field
+ *
+ * @param size - how big of an "int" or the name of the size field for a string
+ * @param type - int or string
+ */
public String fillDecoder(String size, String type)
{
String javaType = RecordUtil.getType(size, type, 0);
@@ -89,8 +95,8 @@
result = "data[ 0x" + Integer.toHexString(offset) + " + offset ]";
else if (javaType.equals("double"))
result = "LittleEndian.getDouble(data, 0x" +
Integer.toHexString(offset) + " + offset)";
- else if (javaType.equals("ExcelString"))
- result = "ExcelStringUtil.decodeExcelString(data, 0x" +
Integer.toHexString(offset) + " + offset)";
+ else if (javaType.equals("String"))
+ result = "StringUtil.getFromUnicode(data, 0x" +
Integer.toHexString(offset) + " + offset,"+ size + ")";
try
{
@@ -101,6 +107,7 @@
}
return result;
}
+
//position(),@name,@size,@type
public String serialiseEncoder( int fieldNumber, String fieldName, String size,
String type)
@@ -120,7 +127,7 @@
else if (javaType.equals("double"))
result = "LittleEndian.putDouble(data, " + (offset+4) + " + offset, " +
javaFieldName + ");";
else if (javaType.equals("ExcelString"))
- result = "StringUtil.putUncompressedUnicode(getFontName(), data, 20 +
offset);";
+ result = "StringUtil.putUncompressedUnicode("+ javaFieldName +", data,
20 + offset);";
try
{
@@ -139,7 +146,7 @@
if ("var".equals(size))
{
String javaFieldName = RecordUtil.getFieldName(fieldNumber,fieldName,0);
- return result + javaFieldName + ".sizeInBytes()";
+ return result + " ("+javaFieldName + ".length() *2)";
}
else if ("varword".equals(size))
{
1.10 +2 -2
jakarta-poi/src/scratchpad/src/org/apache/poi/generator/RecordUtil.java
Index: RecordUtil.java
===================================================================
RCS file:
/home/cvs/jakarta-poi/src/scratchpad/src/org/apache/poi/generator/RecordUtil.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- RecordUtil.java 14 May 2002 18:13:33 -0000 1.9
+++ RecordUtil.java 15 May 2002 00:56:18 -0000 1.10
@@ -136,7 +136,7 @@
else if (type.equals("float") && "8".equals(size))
return pad(new StringBuffer("double"), padTo).toString();
else if (type.equals("string"))
- return pad(new StringBuffer("ExcelString"), padTo).toString();
+ return pad(new StringBuffer("String"), padTo).toString();
return "short"; // if we don't know, default to short
}
@@ -152,7 +152,7 @@
else if (numeric && "2".equals(size))
result = pad(new StringBuffer("short"), padTo);
else if (type.equals("string"))
- result = pad(new StringBuffer("ExcelString"), padTo);
+ result = pad(new StringBuffer("String"), padTo);
else
return "";
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>