<?xml version="1.0" encoding="windows-1252"?>
<node id="1013474" title="Re: getting wrong value" created="2013-01-15 19:21:09" updated="2013-01-15 19:21:09">
<type id="11">
note</type>
<author id="920017">
pvaldes</author>
<data>
<field name="doctext">
&lt;p&gt;And you are not calling the function&lt;/p&gt;

&lt;c&gt; open(INFILE, '&lt;','test.dat');   
 open(OUTFILE, '&gt;','hex.dat');   
 while(&lt;INFILE&gt;){                                
  chomp;  
  #printf ("%#x", $line) &gt; $line2; 
  my $line2 = &amp;capture_stdout($_) ; ### &lt;--- see the &amp;
  print OUTFILE $line2,"\n";   
  }                                
                                   
      sub capture_stdout(){                                
         my $v;                        
         local *STDOUT;                 
         open(STDOUT, '&gt;', \$v);        
         printf ("%#x", $_);          
         return $v;                     
     }                                
 
close INFILE;                              
close OUTFILE;&lt;/c&gt;

&lt;p&gt;In any case you can use pack for this, probably&lt;/p&gt;</field>
<field name="root_node">
1013464</field>
<field name="parent_node">
1013464</field>
</data>
</node>
