Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 21268|Отговор: 0

[Източник] C# 2, 10, 16 и 16 и техните ASCII кодове

[Копирай линк]
Публикувано в 9.08.2016 г. 10:22:40 ч. | | |

C# 2, 10, 16 и 16 и техните ASCII кодове
            --------//Конвертиране на различни типове символи в C# за серийна портова комуникация------------


             Разбиране на дължината на знака
            string s = "Аз съм 2 войници";
            int len = s.Дължина; 6 героя  
            byte[] sarr = System.Text.Encoding.Default.GetBytes(s);
            len = sarr. Дължина; 11 байта  
           
            Няма смисъл да се преобразува десетична в низ, и трябва да се конвертира в съответния ASCII код
            int t1 = 81;
            Струна s1 = T1. ToString();
            Това десетично преобразуване съответства на ASCII символите, за да има смисъл.
            s1 = (((char)t1). ToString();

            Шестнадесетичен към струн: Това няма смисъл. Това е Tostring.
            int intAB = 0x16;
            s1 = intAB.ToString();
            Шестнадесетични към ASCII символи:
            байт babb = 0x45;
            String Ass = ((Char)Babb). ToString();

            ASCII низове към десетични числа
            string tr = "2Ab Liu";
            струна d ="";
            за (int i = 0; Аз < TR. Дължина; i++)
            {
                int ii = (int)Convert.ToChar(tr. Подстринг(i, 1));
                d = d +" "+ ii.ToString();
            }

            ASCII низ към шестнадесетично число
            string s2 = "2Ab Liu";
            byte[] ba = System.Text.ASCIIEncoding.Default.GetBytes(s2);
            StringBuilder sb = нов StringBuilder();
            Foreach (байт B в BA)
            {
                SB. Append(b.ToString("x") + " ");
            }

            От шестнадесетична към десетична
            int intA = 0x16; При дефиниране трябва да е 0x  
            струна strA = "16"; Струните могат да бъдат без  
            int intA1 = Convert.ToInt32(intA);
            int intA2 = Convert.ToInt32(strA, 16);

            10 до 16 години
            strA = Convert.ToString(intA2, 16);


            Десетично към двоично, шестнадесетичното е подобно
            int int10 = 10;
            string str2 = Convert.ToString(int10,2);

            От двоична към десетична
            int10 = Convert.ToInt32(str2,2);







//-------------------------------------------------------------------------------

Как C# serialport получава набор от шестнадесетични числа
Как C# SerialPort получава набор от шестнадесетични числа и как трябва да бъде написана програмата?
Най-добрият отговор
System.IO.Ports.SerialPort sp = нов System.IO.Ports.SerialPort("COM1");
int buffersize = 6;   Размерът на шестнадесетичното число (да кажем 6 байта)
Byte[] buffer = нов Byte[buffersize];   Създай буфер
сп. Read(buffer, 0, buffersize);    Прочетете от COM1

Този набор от шестнадесетични числа се обработва  


C# сериен порт изпраща данни
Точки за награда: 5 - Време за разрешаване: 2009-10-19 21:15
Искам да изпратя хекс команда към серийния порт, командният низ е: "00 00 00 1B 54 59 55 54 00 00 00 00 00 00 00 00 00 00 00 00 FF E1 00 05 00 0D 0A"
Как мога да конвертирам горния низ числово, така че компютърният сериен порт да знае, че изпратиният от мен низ е шестнадесетичен? Допълнение с въпроси:
Кой има такъв примерен код, моля, помогнете ми, аз съм хардуерен производител, не съм запознат със софтуер, надявам се майсторът да даде подробен код, благодаря! Питател: daishuanqing - Стажант ниво 1
Най-добрият отговор
Добавете референция: Microsoft.VisualBasic (е C# код, но трябва да бъде рефериран.) )

Прегледайте SerialPortNames със следното, за да получите всички серийни портове
Microsoft.VisualBasic.Devices.Computer pc = новият Microsoft.VisualBasic.Devices.Computer();
Foreach (String S в PC. Ports.SerialPortNames)
{
    this.comboBox1.Items.Add(s);
}

След това се използва серийното име на порт comName, което се показва, за да се получи оперативният обект. Можете да отворите този сериен порт:

System.IO.Ports.SerialPort com = нов System.IO.Ports.SerialPort(comName);
com. Open();

След това данните могат да бъдат записани към серийния порт

Изпращане на данни към сериен порт:
com. WriteLine(this.textBox1.Text);
Могат да се пишат и байтови масиви
com. Write(bArray,0,5); Той се отнася до 5-те байта, започващи от 0, които записват байтовия масив bArray

Данните могат да бъдат приети също:
com. ReadLine()
Възможно е също да се четат байтове
com. ReadByte();


Накрая тя е затворена:
com. Close();


Също така, конвертирайте шестнадесетичния низ в байт
байт b = Convert.ToByte("1A",16); C# сериен порт изпраща данни
Точки за награда: 5 - Време за разрешаване: 2009-10-19 21:15
Искам да изпратя хекс команда към серийния порт, командният низ е: "00 00 00 1B 54 59 55 54 00 00 00 00 00 00 00 00 00 00 00 00 FF E1 00 05 00 0D 0A"
Как мога да конвертирам горния низ числово, така че компютърният сериен порт да знае, че изпратиният от мен низ е шестнадесетичен? Допълнение с въпроси:
Кой има такъв примерен код, моля, помогнете ми, аз съм хардуерен производител, не съм запознат със софтуер, надявам се майсторът да даде подробен код, благодаря! Питател: daishuanqing - Стажант ниво 1
Най-добрият отговор
Добавете референция: Microsoft.VisualBasic (е C# код, но трябва да бъде рефериран.) )

Прегледайте SerialPortNames със следното, за да получите всички серийни портове
Microsoft.VisualBasic.Devices.Computer pc = новият Microsoft.VisualBasic.Devices.Computer();
Foreach (String S в PC. Ports.SerialPortNames)
{
    this.comboBox1.Items.Add(s);
}

След това се използва серийното име на порт comName, което се показва, за да се получи оперативният обект. Можете да отворите този сериен порт:

System.IO.Ports.SerialPort com = нов System.IO.Ports.SerialPort(comName);
com. Open();

След това данните могат да бъдат записани към серийния порт

Изпращане на данни към сериен порт:
com. WriteLine(this.textBox1.Text);
Могат да се пишат и байтови масиви
com. Write(bArray,0,5); Той се отнася до 5-те байта, започващи от 0, които записват байтовия масив bArray

Данните могат да бъдат приети също:
com. ReadLine()
Възможно е също да се четат байтове
com. ReadByte();


Накрая тя е затворена:
com. Close();


Също така, конвертирайте шестнадесетичния низ в байт
байт b = Convert.ToByte("1A",16);




Предишен:C# ASCII криптиране и декриптиране
Следващ:WebAPI не поддържа заобиколни решения за крос-домейн заявки
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com