CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

C# - Conversion majuscules/minuscles.

Katheryn
Katheryn
Niveau 3
18 mars 2011 à 20:40:54

Bonjour,

Ma question est simple, je voudrais faire en sorte que le constructeur d'une classe puisse convertir des données saisies avec les règles suivantes: Première lettre en majuscule et les autres en minuscules. Par exemple, j'écris: "sAlUt", je désire que ça soit: "Salut".

Ce n'est pas en mode console.
Merci d'avance !

PaulAimik
PaulAimik
Niveau 10
18 mars 2011 à 21:54:00

Pas testé, mais ca devrait marcher :

String Capitalize( String s ) {
__String ret = null;
__if( s.Length >= 1 ) {
____ret = Char.ToUpper(s[0]).ToString();
____if( s.Length >= 2 ) {
______ret += s.SubString(1).ToLower();
____}
__}
__return ret ?? s;
}

Katheryn
Katheryn
Niveau 3
18 mars 2011 à 22:24:39

Je teste ça tout à l'heure. :o))

Paulop
Paulop
Niveau 12
19 mars 2011 à 03:11:32

La méthode de PaulAimik instancie plusieurs Strings dont tu peux te passer (elles sont crées par SubString(), ToLower() et ToString() car string est immutable).
Tu peux convertir ta string en tableau de char avec ToCharArray() et ensuite tu retourneras new String(charArray);

http://pastebin.com/sXP4VxYt

Ainsi tu ne créés que deux String au lieu de cinq si je ne me trompe pas.

Katheryn
Katheryn
Niveau 3
02 avril 2011 à 18:54:35

En fait, c'est beaucoup plus simple que ça, j'avais aussi précisé que c'était le constructeur qui devait faire le travail. Pour l'instant, ça ressemble à ça: http://www.noelshack.com/com/1/1/capture-4dbc196592.png

En somme, je prends le premier caractère du nom et du musicien et je les mets en majuscules. A l'aide de Substring, je prends le reste de la chaîne et je les mets en minuscules. Sauf que je ne suis pas sur de l'utilisation de Substring, quelqu'un pourrait-il m'aider ?

Deuxième question, je veux valider des entrées. Des instruments pour être plus précis, "Guitare" est accepté, "GUITARE" est accepté, "GuItArE" est accepté. Vous pigez le principe, aucune sensibilité à la casse càd que majuscules ou pas, on s'en fout, on valide.

J'ai écrit ça:
"if (instrument.Text != "Guitare")
{
...
}

Sauf que Guitare sera validé sans problème mais pas "GuITare" ou "GuitarE" par exemple. Comment faire pour que ça soit le cas ? Merci d'avance pour vos réponses !

godrik
godrik
Niveau 30
02 avril 2011 à 21:35:50

typiquement on converti les chaines en lower case avant de faire ce test. Il y a aussi des fonctions de comparaison insensible a la casse. Mais je ne connais pas assez C# pour pouvoir trouver la fonction qui fait ca, si il y en a une.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment