定義string變量為str,內存流變量為ms,比特數組為bt
1.字符串轉比特數組
(1)byte[] bt=System.Text.Encoding.Default.GetBytes("字符串");
(2)byte[] bt=Convert.FromBase64String("字符串");
(2)byte[] bt=Convert.FromBase64String("字符串");
2.字符串轉流
(1)MemoryStream ms=new MemoryStream(System.Text.Encoding.Default.GetBytes("字符串"));
(2)MemoryStream ms=new MemoryStream(Convert.FromBase64String("字符串"));
(2)MemoryStream ms=new MemoryStream(Convert.FromBase64String("字符串"));
3.流轉比特數組
(1)byte[] bt=ms.ToArray();
(2)MemoryStream ms=new MemoryStream();ms.Write(bt,0,ms.Length);
(2)MemoryStream ms=new MemoryStream();ms.Write(bt,0,ms.Length);
4.流轉字符串
(1)string str=Convert.ToBase64String(ms.ToArray());
(2)string str=System.Text.Encoding.Default.GetString(ms.ToArray());
(2)string str=System.Text.Encoding.Default.GetString(ms.ToArray());
5.比特數組轉字符串
(1)string str=System.Text.Encoding.Default.GetString(bt);
(2)string str=Convert.ToBase64String(bt);
(2)string str=Convert.ToBase64String(bt);
6.比特數組轉流
(1)MemoryStream ms=new MemoryStream(bt);
(2)MemoryStream ms=new MemoryStream();ms.Read(bt,0,bt.Length);
(2)MemoryStream ms=new MemoryStream();ms.Read(bt,0,bt.Length);
總結:可以看出byte[]在字符串string和流MemoryStream之間轉換起到過渡的作用,string和MemoryStream轉換都要先轉換成byte[]。
以下是將文件轉為byte[]
/// <summary>
/// 將文件轉換成byte[] 數組
/// </summary>
/// <param name="fileUrl">文件路徑文件名稱</param>
/// <returns>byte[]</returns>
protected byte[] GetFileData(string fileUrl)
{
FileStream fs = new FileStream(fileUrl, FileMode.Open, FileAccess.Read);
try
{
byte[] buffur = new byte[fs.Length];
fs.Read(buffur, 0, (int)fs.Length);
return buffur;
}
catch (Exception ex)
{
//MessageBoxHelper.ShowPrompt(ex.Message);
return null;
}
finally
{
if (fs != null)
{
//關閉資源
fs.Close();
}
}
}
/// <summary>
/// 將文件轉換成byte[] 數組
/// </summary>
/// <param name="fileUrl">文件路徑文件名稱</param>
/// <returns>byte[]</returns>
protected byte[] AuthGetFileData(string fileUrl)
{
using (FileStream fs = new FileStream(fileUrl, FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
byte[] buffur = new byte[fs.Length];
using (BinaryWriter bw = new BinaryWriter(fs))
{
bw.Write(buffur);
bw.Close();
}
return buffur;
}
}

