Format CommaText dans une TStrings
| TStrings = class (TObject) | Interface de TStrings | Exemples de TStrings |
Le format CommaText des TStrings s'apparente au format CSV, mais normalise le comportement vis-à-vis des séparateurs.
En CommaText, toute chaîne de la liste contenant des espaces, des virgules ou des apostrophes est placée entre guillemets; les guillemets à l'intérieur des chaînes sont répétés. Par exemple, si la liste contient les chaînes suivantes :
Chai,ne1 Chai"ne2 Chaine 3 Chaine4
La représentation CommaText sera
"Chai,ne1","Chai""ne2","Chaine 3",Chaine4
Lorsqu'une valeur est affectée à CommaText, la valeur est analysée comme une chaîne dont les chaînes sont séparées par des virgules ou des espaces, et, de manière facultative, mises entre guillemets. Les guillemets placés à l'intérieur des chaînes sont répétés afin de les distinguer des guillemets encadrant les chaînes. Les espaces et les virgules ne se trouvant pas entre des guillemets sont des délimiteurs. Deux virgules successives indiquent une chaîne vide, alors que des espaces à côté d'un délimiteur ne sont pas pris en compte.
Si, par exemple, la valeur suivante est affectée à CommaText :
"Chai,ne1", "Chai""ne2", Chaine 3, Chaine4
la liste contiendra alors
Chai,ne1 Chai"ne2 Chaine 3 Chaine4
L'ajout d'une virgule à la fin de la chaîne source provoque l'inclusion d'un élément vide dans la liste de chaînes.
Par exemple, si CommaText est définie par :
"Chaine1, Chaine2, Chaine3, "
la liste de chaînes contiendra
Chaine1 Chaine2 Chaine3 <chaîne vide>