var x = Label3.Text;
var y = x.Split('Alt+255');
Label4.Text = y[0];
我在文本中有Ascii 255如何在C#中分割。如何在C#中用Ascii 255分割字符串?
在此先感謝
var x = Label3.Text;
var y = x.Split('Alt+255');
Label4.Text = y[0];
我在文本中有Ascii 255如何在C#中分割。如何在C#中用Ascii 255分割字符串?
在此先感謝
string[] splitted = x.Split('+');
它不起作用 – 2015-02-12 07:37:30
那麼,你的輸入是什麼,你的期望輸出是什麼? – 2015-02-12 08:43:33
正如其他人評論說,ASCII是7位編碼標準,所以在技術上是沒有這樣的東西ASCII 255。但是,我相信正是你所描述的是一些一種包含ASCII字符的字節流,由字節255(十六進制中的0xff)分隔。
將數據轉換爲字符串後,各個字符以UTF-16格式表示;一種可以容納完整Unicode字符集的多字節格式。
要定義一個不可打印的字符文字,您需要使用\x
轉義序列。所以255變成了\x00ff
。
試試這個:
var y = x.Split('\x00ff');
['String.Split()'](https://msdn.microsoft.com/en-us/library/b873y76a.aspx)需要'params char []',不需要手動構建數組。 – Mormegil 2015-02-12 10:15:44
有時我會因爲無法看到明顯的東西而驚歎自己!謝謝,@Mormegil。我會更新我的答案。 – 2015-02-12 15:37:03
String s = " ";
var bytes = Encoding.GetEncoding("Windows-1252").GetBytes(s);
string binStr = string.Join("", bytes.Select(b => Convert.ToString(b, 2)));
int decimalEquivalent = Convert.ToInt32(binStr, 2);
var y = x.Split((char)decimalEquivalent);
我做到這一點,它解決了myproblems謝謝你們的迴應。
不要採取這種錯誤的方式,但這看起來像一個瘋狂的代碼和複雜性來確定一個字符。是真的一個空間,如這裏所示,或必須使用鍵盤輸入Alt-255? – 2015-02-12 15:34:11
@Steve是否有任何標準語法來使分割函數與Alt-255或任何其他Ascii字符 – 2015-02-13 09:18:23
ASCII是7位......如果數值大於127,則不處理ASCII。 – dandan78 2015-02-12 07:36:08
var y = x.Split('\ u00FF'); – Mormegil 2015-02-12 07:36:36
不工作是否有任何標準語法做與ASCII碼組合分號 – 2015-02-12 07:39:44