Conversion chaîne de caractère pour la mettre entre balise [C#] [Résolu]

therainbow3 50 Messages postés vendredi 14 mars 2008Date d'inscription 25 mai 2010 Dernière intervention - 24 avril 2008 à 09:56 - Dernière réponse : cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention
- 26 avril 2008 à 23:27
Bonjour,

J'aimerais convertir un texte que le client rentrera en une chaîne de caractère entre balise pour pouvoir l'insérer dans une requête SQL qui demande ce format.
Par exemple:
convertir : coucou, est-ce que tu reçoit bien un mail? --> en :
'coucou [NAME], 

est-ce que ça t'envoie bien un mail? 

'
Je ne sais pas du tout et je n'ai pas trouvé comment faire. Si vous pouviez m'aider merci d'avance.
Bonne journée.
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
SharpMao 1025 Messages postés mardi 4 février 2003Date d'inscription 7 juin 2010 Dernière intervention - 24 avril 2008 à 12:16
3
Merci
Hello,

Pour les caractère spéciaux, tu peux essayer avec System.Web.HttpUtility.HtmlEncodeCa ne transformera pas ç en  ç mais en ç ce qui revient au même.

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

Merci SharpMao 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de SharpMao
Liverion 296 Messages postés mardi 22 avril 2008Date d'inscription 18 août 2008 Dernière intervention - 24 avril 2008 à 10:21
0
Merci
Salut,
Peut être qu'en utilisant String.Split tu pourrais separer la chaîne entrée par l'utilisateur et la transformer ensuite.

Par exemple

String name = "toto";
String phraseSortie="";
String chaineEntree="coucou, est-ce que tu recoit bien un mail?";
String[] partiePhrase=chaineEntree.Split(',');

phraseSortie+=""+partiePhrase[0]+" "+name+",

"+partiePhrase[1]+"

";
Commenter la réponse de Liverion
therainbow3 50 Messages postés vendredi 14 mars 2008Date d'inscription 25 mai 2010 Dernière intervention - 24 avril 2008 à 10:56
0
Merci
ça pourrait marcher en effet et j'y ai pensé cependant je ne sais pas ce que le client va rentrer comme texte du coup je peux pas savoir ou "splitter",et ou mettre les balises.
Commenter la réponse de therainbow3
Liverion 296 Messages postés mardi 22 avril 2008Date d'inscription 18 août 2008 Dernière intervention - 24 avril 2008 à 10:59
0
Merci
Après tu peux toujours recuperer la chaine et appliquer plusieurs split différents avec un traitement particulier pour chacun, genre je split sur les espaces, si le premier mot est "coucou", "bonjour","salut" je rajoute le nom derriere, je split sur les virgules etc ..
Commenter la réponse de Liverion
therainbow3 50 Messages postés vendredi 14 mars 2008Date d'inscription 25 mai 2010 Dernière intervention - 24 avril 2008 à 11:12
0
Merci
oui en effet c'est une possibilité. je peux détecter tous les sauts de lignes et rajouter en début de chaque phrase et en fin de ligne

et pour les caractères spéciaux je peux les détecter et les remplacer par ce qu'il va bien par ex: ç --> ç
Manque plus qu'à coder maintenant.
Merci pour le coup de main.
Commenter la réponse de therainbow3
Liverion 296 Messages postés mardi 22 avril 2008Date d'inscription 18 août 2008 Dernière intervention - 24 avril 2008 à 11:14
0
Merci
De rien ^^
Commenter la réponse de Liverion
therainbow3 50 Messages postés vendredi 14 mars 2008Date d'inscription 25 mai 2010 Dernière intervention - 24 avril 2008 à 13:12
0
Merci
Merci beaucoup SharpMao ça va bien m'aider.
Commenter la réponse de therainbow3
Cipoli 53 Messages postés mercredi 29 août 2007Date d'inscription 31 mars 2010 Dernière intervention - 24 avril 2008 à 14:30
0
Merci
Peut tu simplement construire une phrase de type :

string template = "coucou M.<%Name%> <%Prenom%> ,&nbsp;

est-ce que &ccedil;a t&#39;envoie bien un mail?&nbsp;

"

//Et tu remplace les <%Emplacement%> par les valeurs de ton choix.
template = template.Replace(<%Name%>, "Mon Nom");
template = template.Replace(<%Prenom%>, "Mon Prénom");

Voila bon courage tiens moi au courant.
Commenter la réponse de Cipoli
therainbow3 50 Messages postés vendredi 14 mars 2008Date d'inscription 25 mai 2010 Dernière intervention - 24 avril 2008 à 14:50
0
Merci
Non je ne peux pas le faire car si tu veux le client peut écrire 100 lignes et je ne sais pas ce qu'il va marquer. Ce que m'a dit SharpMao marche parfaitement pour les caractères spéciaux maitenant ce que je voudrais faire c'est rajouter au début de chaque ligne et en fin de ligne

.
Commenter la réponse de therainbow3
Liverion 296 Messages postés mardi 22 avril 2008Date d'inscription 18 août 2008 Dernière intervention - 24 avril 2008 à 14:53
0
Merci
Ben je vois pas trop d'autres manières que de splitter ta chaine sur le caractère "\n" pour du linux ou du "\n\r" pour du windows il me semble.
Commenter la réponse de Liverion
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 26 avril 2008 à 23:27
0
Merci
Salut,

\r\n plutôt sous Windows (CRLF, pas LFCR)
De manière générale voir plutôt Environment .NewLine.

Concernant System.Web.HttpUtility.HtmlEncode citée par SharpMao : attention elle est relativement limitée, j'en ai parler un peu ici, ici et ici.

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.