C#涓璏emoryStream绫荤殑浠嬬粛
MemoryStream绫绘槸C#涓殑涓€涓祦绫伙紝鐢ㄤ簬灏嗘暟鎹瓨鍌ㄥ湪鍐呭瓨涓殑娴佷腑銆傚畠鎻愪緵浜嗕竴涓唴瀛樼紦鍐插尯锛屽彲浠ュ皢鏁版嵁鍐欏叆缂撳啿鍖烘垨浠庣紦鍐插尯璇诲彇鏁版嵁銆?/p>
MemoryStream绫荤户鎵胯嚜Stream绫伙紝鍥犳鍙互浣跨敤Stream绫讳腑瀹氫箟鐨勫悇绉嶈鍐欐搷浣滄柟娉曘€傚畠杩樺疄鐜颁簡IDisposable鎺ュ彛锛屽洜姝ゅ彲浠ヤ娇鐢╱sing璇彞鑷姩閲婃斁璧勬簮銆?/p>
MemoryStream绫荤殑涓昏鐗圭偣鍖呮嫭锛?/p>
- 鍐呭瓨瀛樺偍锛氭暟鎹瓨鍌ㄥ湪鍐呭瓨涓殑缂撳啿鍖轰腑锛岃€屼笉鏄湪纾佺洏鎴栫綉缁滀腑銆傝繖浣垮緱璇诲啓鎿嶄綔鏇村揩閫燂紝骞朵笖鍙互閬垮厤纾佺洏IO鐨勫紑閿€銆?/li>
- 鍙彉澶у皬锛歁emoryStream鐨勫ぇ灏忓彲浠ユ牴鎹渶瑕佸姩鎬佸闀挎垨缂╁皬锛屽彲浠ラ€氳繃璋冩暣瀹归噺鏉ュ鐞嗕笉鍚屽ぇ灏忕殑鏁版嵁銆?/li>
- 璇诲啓鎿嶄綔锛氬彲浠ヤ娇鐢≧ead鏂规硶浠庡唴瀛樹腑璇诲彇鏁版嵁锛屼娇鐢╓rite鏂规硶鍚戝唴瀛樹腑鍐欏叆鏁版嵁銆傝繕鍙互浣跨敤Seek鏂规硶鏉ヨ缃祦鐨勪綅缃€?/li>
- 鏀寔瀛楄妭鏁扮粍锛氬彲浠ヤ娇鐢ㄥ瓧鑺傛暟缁勬潵鍒濆鍖朚emoryStream锛屼篃鍙互浠嶮emoryStream涓幏鍙栧瓧鑺傛暟缁勩€?/li>
浣跨敤MemoryStream绫绘椂闇€瑕佹敞鎰忓唴瀛樺崰鐢ㄩ棶棰橈紝鍥犱负鏁版嵁瀛樺偍鍦ㄥ唴瀛樹腑锛屽鏋滃鐞嗗ぇ閲忔暟鎹彲鑳戒細瀵艰嚧鍐呭瓨婧㈠嚭鐨勯棶棰樸€傚洜姝わ紝鍦ㄥ鐞嗗ぇ閲忔暟鎹椂锛岄渶瑕佸強鏃堕噴鏀綧emoryStream瀵硅薄锛屽苟鑰冭檻浣跨敤鍏朵粬鏂瑰紡瀛樺偍鏁版嵁锛屽纾佺洏鎴栨暟鎹簱銆?/p>
浠ヤ笅鏄竴涓娇鐢∕emoryStream绫荤殑绀轰緥锛?/p>
byte[] data = Encoding.UTF8.GetBytes("Hello, World!");
using (MemoryStream stream = new MemoryStream(data))
{
byte[] buffer = new byte[1024];
int bytesRead = stream.Read(buffer, 0, buffer.Length);
string text = Encoding.UTF8.GetString(buffer, 0, bytesRead);
Console.WriteLine(text);
}
浠ヤ笂浠g爜灏嗗瓧绗︿覆杞崲涓哄瓧鑺傛暟缁勶紝骞朵娇鐢∕emoryStream绫诲皢瀛楄妭鏁扮粍鍐欏叆鍐呭瓨娴佷腑銆傜劧鍚庝娇鐢≧ead鏂规硶浠庡唴瀛樻祦涓鍙栨暟鎹紝骞跺皢鍏惰浆鎹负瀛楃涓茶繘琛岃緭鍑恒€?/p>
相关问答