Tôi đang cố gắng tạo ứng dụng giao diện điều khiển C# với Visual Studio 2010 bằng tiếng Anh Windows 7 Ultimate 64 bit. Khi tôi cố gắng sao chép một đường dẫn với các ký tự không phải ASCII và sau đó dán nó vào ứng dụng giao diện điều khiển của tôi, các ký tự không phải ASCII biến thành ???. Có cách nào để sửa lỗi này không?Sự cố với việc nhập các ký tự không phải tiếng Anh vào ứng dụng giao diện điều khiển C#
Đây là những gì tôi sao chép: C:\Test Folder\документи
Và đây là mã (sau khi một liên kết gợi ý ở trên):
Console.OutputEncoding = System.Text.Encoding.UTF8;
string strLineUserInput = Console.ReadLine();
Nhưng ngay cả nếu tôi thay đổi font chữ, các C:\Test Folder\документи
vẫn trở thành C:\Test Folder\?????????
trong strLineUserInput
biến khi tôi kiểm tra nó bằng trình gỡ lỗi.
Cũng lưu ý rằng không giống như liên kết "bài đăng trùng lặp", tôi cần các ký tự này trên đầu vào.
Vì vậy, nếu tôi làm điều này thì:
Console.InputEncoding = System.Text.Encoding.UTF8;
string strLineUserInput = Console.ReadLine();
My strLineUserInput
trở thành null
nếu tôi đọc được nội dung trên.
Có, hãy chuyển tới cài đặt cửa sổ bảng điều khiển và thay đổi phông chữ thành một trong đó hỗ trợ các ký tự mở rộng. Bàn điều khiển Lucida nên làm. –
bản sao có thể có của [Cách viết ký tự unicode thành bàn điều khiển?] (Http://stackoverflow.com/questions/5750203/how-to-write-unicode-chars-to-console) –
Bạn có thể đưa vào câu hỏi của mình một số các nhân vật? –