You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by se...@apache.org on 2011/08/23 17:10:37 UTC

svn commit: r1160735 - in /poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model: FIBFieldHandler.java FileInformationBlock.java

Author: sergey
Date: Tue Aug 23 15:10:37 2011
New Revision: 1160735

URL: http://svn.apache.org/viewvc?rev=1160735&view=rev
Log:
dump FIB field values (starting from 154 offset)

Modified:
    poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FIBFieldHandler.java
    poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FileInformationBlock.java

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FIBFieldHandler.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FIBFieldHandler.java?rev=1160735&r1=1160734&r2=1160735&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FIBFieldHandler.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FIBFieldHandler.java Tue Aug 23 15:10:37 2011
@@ -248,4 +248,59 @@ public final class FIBFieldHandler
       }
     }
   }
+
+    private static String leftPad( String text, int value, char padChar )
+    {
+        if ( text.length() >= value )
+            return text;
+
+        StringBuilder result = new StringBuilder();
+        for ( int i = 0; i < ( value - text.length() ); i++ )
+        {
+            result.append( padChar );
+        }
+        result.append( text );
+        return result.toString();
+    }
+
+    @Override
+    public String toString()
+    {
+        StringBuilder result = new StringBuilder();
+        result.append( "[FIBFieldHandler]:\n" );
+
+        result.append( "\tFields:\n" );
+        result.append( "\t" );
+        result.append( leftPad( "Index", 8, ' ' ) );
+        result.append( leftPad( "FIB offset", 15, ' ' ) );
+        result.append( leftPad( "Offset", 8, ' ' ) );
+        result.append( leftPad( "Size", 8, ' ' ) );
+        result.append( '\n' );
+        for ( int x = 0; x < _fields.length / 2; x++ )
+        {
+            result.append( '\t' );
+            result.append( leftPad( Integer.toString( x ), 8, ' ' ) );
+            result.append( leftPad(
+                    Integer.toString( 154 + x * LittleEndian.INT_SIZE * 2 ), 6,
+                    ' ' ) );
+            result.append( "   0x" );
+            result.append( leftPad(
+                    Integer.toHexString( 154 + x * LittleEndian.INT_SIZE * 2 ),
+                    4, '0' ) );
+            result.append( leftPad( Integer.toString( getFieldOffset( x ) ), 8,
+                    ' ' ) );
+            result.append( leftPad( Integer.toString( getFieldSize( x ) ), 8,
+                    ' ' ) );
+
+            UnhandledDataStructure structure = _unknownMap.get( Integer
+                    .valueOf( x ) );
+            if ( structure != null )
+            {
+                result.append( " => Unknown structure of size " );
+                result.append( structure._buf.length );
+            }
+            result.append( '\n' );
+        }
+        return result.toString();
+    }
 }

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FileInformationBlock.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FileInformationBlock.java?rev=1160735&r1=1160734&r2=1160735&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FileInformationBlock.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/FileInformationBlock.java Tue Aug 23 15:10:37 2011
@@ -150,6 +150,7 @@ public final class FileInformationBlock 
             stringBuilder.append( getNotesTextPositionsSize( noteType ) );
             stringBuilder.append( " bytes\n" );
         }
+        stringBuilder.append( _fieldHandler );
         try
         {
             stringBuilder.append( "\tJava reflection info:\n" );



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org