teclas teclado simbolos simbolo para lista laptop grande extendido especiales diametro consola completo combinacion codigo caracteres c# .net vb.net console-application

c# - teclado - ¿Cómo escribir caracteres Unicode en la consola?



lista de caracteres especiales (3)

Encontré una solución elegante en MSDN

System.Console.Write(''/uXXXX'') //XXXX is hex Unicode for character

Este sencillo programa escribe ℃ en la pantalla.

using System; public class Test { public static void Main() { Console.Write(''/u2103''); //℃ character code } }

Me preguntaba si era posible, en una aplicación de consola, escribir caracteres como usando .NET. Cuando trato de escribir este caracter, la consola genera un signo de interrogación.


Es probable que su codificación de salida esté configurada en ASCII. Intenta usar esto antes de enviar el resultado:

Console.OutputEncoding = System.Text.Encoding.UTF8;

( link MSDN a la documentación de respaldo).

Y aquí hay una pequeña aplicación de prueba de consola que puede encontrar a mano:

DO#

using System; using System.Text; public static class ConsoleOutputTest { public static void Main() { Console.OutputEncoding = System.Text.Encoding.UTF8; for (var i = 0; i <= 1000; i++) { Console.Write(Strings.ChrW(i)); if (i % 50 == 0) { // break every 50 chars Console.WriteLine(); } } Console.ReadKey(); } }

VB.NET

imports Microsoft.VisualBasic imports System public module ConsoleOutputTest Sub Main() Console.OutputEncoding = System.Text.Encoding.UTF8 dim i as integer for i = 0 to 1000 Console.Write(ChrW(i)) if i mod 50 = 0 ''break every 50 chars Console.WriteLine() end if next Console.ReadKey() End Sub end module

También es posible que su elección de la fuente de consola no sea compatible con ese personaje en particular. Haga clic en el menú de la barra de herramientas de Windows (icono como C :.) y seleccione Propiedades -> Fuente. Pruebe con otras fuentes para ver si muestran su personaje correctamente: