RE : [fpc-pascal] Explicit encoding of LF in XML
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
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
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