2012-09-08 79 views
18

我試圖在Object List View返回的c#應用程序設置中保存一個字節數組(byte [])。如何在c#應用程序設置中保存byte []

任何人都可以給我一個解決方案,如何保存在c#應用程序設置中的字節數組? 或關於如何將字節[]轉換爲字符串之類的一些技巧,然後存儲,然後檢索並再次將其轉換爲字節數組並將其返回給對象列表視圖。

回答

22

其中一個最常見的方式,使從字節數組的字符串編碼它們在Base-64

string encoded = System.Convert.ToBase64String(toEncodeAsBytes); 

使用

byte[] bytes = System.Convert.FromBase64String(encoded); 

,讓您的字節回來。

+0

我完全忘了base64。謝謝你提醒我... –

4

執行此操作的規範方法是將byte[]通過base64轉換爲string,反之亦然。

3

通過不同的方式,你可以將字節數組轉換爲字符串和字符串到字節數組。就像這樣:

1)

string asciiString = ASCIIEncoding.ASCII.GetString(byteArray); 

byte[] byte = ASCIIEncoding.ASCII.GetBytes(asciiString); 

2)

string base64String = System.Convert.ToBase64String(byteArray); 

byte[] byte = System.Convert.FromBase64String(base64String); 

3)

string utf8String = System.Text.Encoding.UTF8.GetString(byteArray); 

byte[] byte = System.Text.Encoding.UTF8.GetBytes(utf8String); 

你也可以使用System.Text.Encoding.BigEndianUnicode,System.Text。 Encoding.Unicode和System.Text.Encoding.UTF32,用於將Byte Array轉換爲字符串和字符串Byte Array。

希望它應該幫助你。

相關問題