2015-07-10 187 views
-1

無法將字符轉換爲字符串來獲取字節,而不是使用數組通過串行端口發送。如何將字符和字符串轉換爲字節數組?

const char STX = '\u0002'; 
    const char ETX = '\u0003'; 
    string pull_shelf_104 = (STX + "01P00104##" + ETX); 

    private byte[] WrapString(string pull_shelf_104) 
    { 
     int length = pull_shelf_104.Length; 
     byte[] send104 = new byte[length]; 
     Array.Copy(System.Text.Encoding.ASCII.GetBytes(pull_shelf_104), 0, send104, 0, length); 
     return send104; 
    } 

    private void linkLabel_HC1_100_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) 
    { 
     if (serialPort1.IsOpen) 
     { 
      byte data = WrapString(string pull_shelf_104); 
      serialPort1.Write(data,0,1); 
     } 
    } 
+0

你不需要'Array.Copy'爲'ASCII.GetBytes'已經返回字節數組。 –

+0

你說'麻煩',有什麼問題嗎?你有沒有得到任何錯誤? – ekad

回答

3

您可以嘗試簡單:

private byte[] WrapString(string pull_shelf_104) 
{ 
    return System.Text.Encoding.ASCII.GetBytes(pull_shelf_104); 
} 
相關問題