RE : [fpc-pascal] Explicit encoding of LF in XML

2011-08-12 Thread Ludo Brands
 All,
 
 Looking at multiline support of text/string cells for export 
 to Excel XML format.
 
 My code, such as:
 TDOMElement(FieldNode).SetAttribute('ss:Type', 'String');
 FNode := 
 Foutputdoc.CreateTextNode(LeftStr(UTF8Decode(EF.Field.AsString
 ), 32767)); writes out a cell like:
 
 CellData ss:Type=StringFirst line.
 Second line/Data/Cell
 (Separated by CR LF - changing it to only LF with a hex 
 editor doesn't help)
 
 Excel needs an encoded LF:
 CellData ss:Type=StringFirst line.#10;Second line/Data/Cell
 
 How can I produce that?
 

Uses strutils;
...
Foutputdoc.CreateTextNode(LeftStr(UTF8Decode(AnsiReplaceStr(AnsiReplaceStr(E
F.Field.AsString,#10,'#10;'),#13,'')),32767));

Ludo

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: RE : [fpc-pascal] Explicit encoding of LF in XML

2011-08-12 Thread Reinier Olislagers
On 12-8-2011 16:31, Ludo Brands wrote:
 Excel needs an encoded LF:
 CellData ss:Type=StringFirst line.#10;Second line/Data/Cell

 How can I produce that?

 
 Uses strutils;
 ...
 Foutputdoc.CreateTextNode(LeftStr(UTF8Decode(AnsiReplaceStr(AnsiReplaceStr(E
 F.Field.AsString,#10,'#10;'),#13,'')),32767));
 
 Ludo
 
That's what I thought at first, too ;)

But the  gets encoded again by the XML unit and you get:
amp;#10;
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


RE : RE : [fpc-pascal] Explicit encoding of LF in XML

2011-08-12 Thread Ludo Brands

  Uses strutils;
  ... 
  
 Foutputdoc.CreateTextNode(LeftStr(UTF8Decode(AnsiReplaceStr(AnsiReplac
  eStr(E
  F.Field.AsString,#10,'#10;'),#13,'')),32767));
  
  Ludo
  
 That's what I thought at first, too ;)
 
 But the  gets encoded again by the XML unit and you get: 
 amp;#10; 

Of course 

Looking in XMLWrite, I don't see any solution. LF is a valid character in a
text node while  isn't.

Ludo

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal