win10 почему VS 2019 не может перекодировать строку в windows-1251
От: klen_  
Дата: 21.03.21 00:09
Оценка:
Всем здрасьте.
это программка WinForms. на форме одна кнопка и два label
то есть всё очень скромно.

подскажите, почему вижел студия не может перекодировать строку в windows-1251
где там надо зарегистрировать Encoding.RegisterProvider method
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
...
...
        string string_Data = "123456 трпр и т.д.";
        //  byte[] data = UTF8Encoding.UTF8.GetBytes( string_Data );  //  РАБОТАЕТ
        //  byte[] data = Encoding.ASCII.GetBytes( string_Data );     //  РАБОТАЕТ

        //  Encoding win1251 = Encoding.GetEncoding(1251);           // ОШИБКА
            Encoding win1251 = Encoding.GetEncoding("windows-1251"); // так тоже ОШИБКА
            byte[] data = win1251.GetBytes( string_Data );

            foreach (byte ch in data)
            {
...
...

VS 2019 пишет:
System.NotSupportedException: "No data is available for encoding 1251.
For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method."

в реестре есть строка codepage 1251 и других nls полно.
большое спасибо.
c#
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.