Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 21268|Відповідь: 0

[Джерело] C# 2, 10, 16 і 16 та їхні ASCII-коди

[Копіювати посилання]
Опубліковано 09.08.2016 10:22:40 | | |

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


             Розуміння довжини символів
            string s = «Я — двоє солдатів»;
            int len = s.Довжина; 6 персонажів  
            byte[] sarr = System.Text.Encoding.Default.GetBytes(s);
            len = sarr. Довжина; 11 байт  
           
            Немає сенсу перетворювати десятковий у рядок, і його потрібно конвертувати у відповідний ASCII-код
            int t1 = 81;
            Струна s1 = t1. ToString();
            Це десяткове перетворення відповідає ASCII-символам, щоб мати сенс.
            s1 = (((символ)t1). ToString();

            Шістнадцяткова до струнки: це не має сенсу. Це тострінг.
            int intAB = 0x16;
            s1 = intAB.ToString();
            Від шістнадцяткових до ASCII-символів:
            byte babb = 0x45;
            Струнковий зад = (((Чар)Бабб). 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 = новий байт[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 FF E1 00 05 00 0D 0A"
Як я можу чисело перетворити наведений вище рядок так, щоб комп'ютерний послідовний порт знав, що рядок, який я надіслав, є шістнадцятковим? Додатк-питання:
У кого є такий зразок коду, будь ласка, допоможіть мені, я виробник апаратного забезпечення, не знайомий з програмним забезпеченням, сподіваюся, майстер зможе дати детальний код, дякую! Запитувач: daishuanqing - Стажер рівня 1
Найкраща відповідь
Додайте посилання: Microsoft.VisualBasic (це код на C#, але на нього потрібно посилатися). )

Перегляньте SerialPortNames за наступним текстом, щоб отримати всі послідовні порти
Microsoft.VisualBasic.Devices.Computer pc = новий Microsoft.VisualBasic.Devices.Computer();
foreach (рядок s у PC. Ports.SerialPortNames)
{
    this.comboBox1.Items.Add(s);
}

Потім використовується послідовне ім'я порту comName для отримання об'єкта операції. Ви можете відкрити цей послідовний порт:

System.IO.Ports.SerialPort com = новий System.IO.Ports.SerialPort(comName);
com. Відкрито();

Дані потім можна записувати на послідовний порт

Передача даних на послідовний порт:
com. WriteLine(this.textBox1.Text);
Також можна писати байтові масиви
com. Write(bArray,0,5); Він стосується 5 байтів, що починаються з 0, які записують масив байтів bArray

Дані також можуть бути прийняті:
com. ReadLine()
Також можливо читати байти
com. ReadByte();


Нарешті, він закривається:
com. Близько();


Також конвертуйте шістнадцятковий рядок у байт
байт 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 FF E1 00 05 00 0D 0A"
Як я можу чисело перетворити наведений вище рядок так, щоб комп'ютерний послідовний порт знав, що рядок, який я надіслав, є шістнадцятковим? Додатк-питання:
У кого є такий зразок коду, будь ласка, допоможіть мені, я виробник апаратного забезпечення, не знайомий з програмним забезпеченням, сподіваюся, майстер зможе дати детальний код, дякую! Запитувач: daishuanqing - Стажер рівня 1
Найкраща відповідь
Додайте посилання: Microsoft.VisualBasic (це код на C#, але на нього потрібно посилатися). )

Перегляньте SerialPortNames за наступним текстом, щоб отримати всі послідовні порти
Microsoft.VisualBasic.Devices.Computer pc = новий Microsoft.VisualBasic.Devices.Computer();
foreach (рядок s у PC. Ports.SerialPortNames)
{
    this.comboBox1.Items.Add(s);
}

Потім використовується послідовне ім'я порту comName для отримання об'єкта операції. Ви можете відкрити цей послідовний порт:

System.IO.Ports.SerialPort com = новий System.IO.Ports.SerialPort(comName);
com. Відкрито();

Дані потім можна записувати на послідовний порт

Передача даних на послідовний порт:
com. WriteLine(this.textBox1.Text);
Також можна писати байтові масиви
com. Write(bArray,0,5); Він стосується 5 байтів, що починаються з 0, які записують масив байтів bArray

Дані також можуть бути прийняті:
com. ReadLine()
Також можливо читати байти
com. ReadByte();


Нарешті, він закривається:
com. Близько();


Також конвертуйте шістнадцятковий рядок у байт
байт b = Convert.ToByte("1A",16);




Попередній:C# ASCII-шифрування та дешифрування
Наступний:WebAPI не підтримує обхідні рішення для кросдоменних запитів
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com