J'essayais de valider les caractères (les étendus) et je vois que dans divers PC ils ont dans les endroits déférents les caractères étendus. Je pense que nous ne voyons pas le même numéro de code ASCII pour un certain caractère (pas dans Latins). Maintenant Mon problème est ce que je dois faire quand mon programme commence à utiliser toujours une certaine table de code ASCII? Pour un caractère étendu bien sûr.pages de code Charachter étendu
Répondre
Ce problème concerne généralement (puisque les chaînes .NET sont UTF-16) uniquement la lecture et l'écriture de fichiers texte. Dans ce cas, utilisez simplement Encoding.GetEncoding(codePage)
pour choisir l'encodage approprié et utilisez-le pour accéder aux fichiers texte. Toutes les opérations utilitaires de texte/fichier intégrées standard prendront un codage, par exemple:
string contents = File.ReadAllText("foo.txt", encoding);
Je n'utilise jamais dans mon code le Encoding.GetEncoding (codePage). Pourrais-je l'utiliser afin d'avoir toujours une certaine page de code dans mon projet? –
Waht je veux utiliser iso-8859-7 grec iso code page –
@Lefteris - quand il s'agit de ** l'accès au fichier **, oui. Ce n'est pas à l'échelle du projet et doit être spécifié chaque fois que vous ouvrez un fichier en tant que texte. –
Je ne comprends pas votre question. .NET utilise l'UTF-16 en interne, donc je ne vois pas ce que l'ASCII a à voir avec les choses. Pouvez-vous expliquer ce que vous faites, ce qui ne fonctionne pas et fournir des échantillons de code? – Oded
Cher Oded, merci beaucoup de votre intérêt pour ma question. Ce que je veux faire est de valider l'entrée des caractères dans différentes zones de texte. Je travaille dans deux PC (bureau et maison) dans mon bureau j'utilise la table de caractères étendue UTF-8 (je pense que c'était ça). mais maintenant dans mon bureau je vois que le code de caractère étendu est en nombre déférent (lieux). Donc, quand ce projet sera peuplé, je ne sais pas si ma fonction de validation fonctionnera ou non. –
@Lefteris - dans une zone de texte, cela ne devrait pas faire de différence; les chaînes sont ** toujours ** UTF-16. Où * exactement * voyez-vous une différence? Pouvez-vous poster un code qui illustre la façon dont vous voyez ce problème? –