[英]How to retrieve numeric data as string
之前可能會問過這種問題,但我無法解決,因此我將不勝感激。
我有一個消息框,其中存儲了我通過Modbus通信收到的錯誤類型。
MessageBox.Show(String.Format("Error uploading: {0}", e.ReceivedData[0]));
e.ReceivedData[0]
保留了我想在消息框中顯示的數據。 因此,可能是1 2 3 4 5 6 7.這些數字代表操作失敗的類型。
但是,我想顯示確切的錯誤消息
1 - "UR_NOT_ACTIVE",
2 - "UR_OUT_OF_BOUND",
3 - "UR_INVALID_COMMAND"
等等。
我的計划是將其存儲在枚舉中,但是我以前沒有使用c#的經驗,因此它比我想象的還要混亂。
是的,使用一個enum
:
public enum OperationFailureType
{
UR_NOT_ACTIVE = 1,
UR_OUT_OF_BOUND = 2,
UR_INVALID_COMMAND = 3
}
現在,您可以使用enumValue.ToString
來獲取文本,然后可以將其enumValue.ToString
轉換為int
以獲取數字。
MessageBox.Show($"Error uploading: {e.ReceivedData[0].ToString()}");
現在假定ReceivedData
是此枚舉的數組。 如果它只是一個int[]
並且您不能更改它,則可以將其強制轉換為OperationFailureType
:
OperationFailureType failureType = (OperationFailureType) e.ReceivedData[0];
MessageBox.Show($"Error uploading: {failureType.ToString()}");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.