Je suis en train de programmer en VB.NET en utilisant Visual Studio 2008. J'ai besoin de définir un littéral de chaîne contenant le caractère "÷" équivalent à Chr (247). Je comprends que VS utilise en interne le codage UTF-16, mais lorsque le fichier source est écrit sur le disque, il contient la valeur d'octet unique F7 pour ce caractère.Comment définir un littéral de chaîne contenant des caractères non-ASCII?
Ce fichier source est traité par un autre programme qui utilise le codage UTF-8 par défaut. Il ne parvient donc pas à interpréter ce caractère correctement, en essayant de le combiner avec le caractère mono-octet suivant. Quel encodage interpréterait correctement le seul octet F7 comme le caractère unique ÷?
Est-il possible d'exprimer un littéral non-ASCII qui utilise uniquement des caractères ASCII, comme l'utilisation d'une séquence d'échappement?
Si vous ne spécifiez pas d'encodage, le fichier est écrit en ASCII (données 7 bits). Pour le jeu de caractères ASCII complet, j'utilise l'encodage winndows-1252. – dbasnett
Dans les paramètres régionaux d'Europe de l'Ouest, VS2008 utilise la page de codes Windows pour enregistrer des fichiers, à moins que certains caractères ne conviennent pas! Merci beaucoup, c'était exactement le pointeur dont j'avais besoin. – Nick
@dbasnett, no. Je peux être sûr seulement de l'éditeur C# dans VS, parce que je l'utilise principalement. donc, il enregistre en UTF-8, qui est rétrocompatible avec ASCII. – Andrey