2009-10-30 90 views
1

實際上我試着到CSHARP代碼轉換爲C ......下面是C#代碼..如何CString的轉換爲字節

CString data = "world is beautiful";  
Byte[] quote = ASCIIEncoding.UTF8.GetBytes(data); 
在上面的代碼

...它的字符串轉換爲字節..類似的是,我可以使用C轉換它的方式.. 任何機構可以告訴我們在C中是多少代碼嗎? Please help me guys

+1

的.Net沒有一個'CString'類;你可能意思是'string'。 – SLaks 2009-10-30 14:18:57

回答

3

那麼CString是一個C++類,所以在C中做它有點不太可能。

但是如果你希望把它作爲一個標準的多字節編碼字符串,那麼你可以做以下

CString data = "world is beautiful"; 
CStringA mbStr = data; 
char* bytes  = mbStr.GetString(); 
+0

tanx for u reply .. 但仍然將其作爲字符串讀取,但不能作爲字節。 是否合理 – kiddo 2009-10-30 14:31:42

+0

char數組是字節數組。僅僅因爲你看着一個調試器,它將它解釋爲一組字符既不在這裏也不在那裏。你有一個字節數組。 – Goz 2009-10-30 15:10:37

0

在C中,char類型被定義爲內存中的一個字節。因此,將字符串存儲爲char *將等同於在C#中存儲字節數組。

+0

海報問如何將Unicode字符串編碼爲UTF-8。 – 2009-10-30 14:17:01

+0

@Jonathan:這是一個苛刻的downvote。原來的問題沒有提到UTF8,它只是作爲一個例子。 – PaulG 2009-10-30 14:23:42