簡體   English   中英

在C#中將int數組轉換為字符串

[英]Convert int array to string in C#

我有一個int[]

RXBuffer[0], RXBuffer[1],..., RXBuffer[9]

其中,每個值表示成ASCII碼,所以0X31表示1 ,0×41表示A

如何將其轉換為10個字符串?

到目前為止,我已經嘗試過Data = RxBuffer.ToString(); 但是它顯示Data等於System.Int32[] ,這不是我的數據。

我怎樣才能做到這一點?

假設“整數數組”的值在0-9范圍內(這是將“整數數組”的長度10轉換為10個字符的字符串的唯一方法)-有點奇怪:

string s = new string(Array.ConvertAll(RXBuffer, x => (char)('0' + x)));

但是效率很高( char[]自動自動調整大小,並且字符串轉換僅通過數學運算而不是ToString() )。


編輯:修訂版可以清楚地表明它們實際上是ASCII碼,因此變得更加簡單:

string s = new string(Array.ConvertAll(RXBuffer, x => (char)x));

坦白地說,如果值是ASCII(甚至是unicode),最好將其存儲為char[] 它覆蓋相同的范圍,占用一半的空間,只是:

string s = new string(RXBuffer);

LolCoder所有您需要的是:

string.Join("",RXBuffer);

=============或=================

        int[] RXBuffer = {0,1,2,3,4,5,6,7,8,9};
        string result  =  string.Join(",",RXBuffer);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM