當前位置: 首頁>>代碼示例>>C#>>正文


C# MemoryStream類代碼示例

本文整理匯總了C#中System.IO.MemoryStream的典型用法代碼示例。如果您正苦於以下問題:C# MemoryStream類的具體用法?C# MemoryStream怎麽用?C# MemoryStream使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


MemoryStream類屬於System.IO命名空間,在下文中一共展示了MemoryStream類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: Main

//引入命名空間
using System;
using System.IO;
using System.Text;

class MemStream
{
    static void Main()
    {
        int count;
        byte[] byteArray;
        char[] charArray;
        UnicodeEncoding uniEncoding = new UnicodeEncoding();

        // Create the data to write to the stream.
        byte[] firstString = uniEncoding.GetBytes(
            "Invalid file path characters are: ");
        byte[] secondString = uniEncoding.GetBytes(
            Path.GetInvalidPathChars());

        using(MemoryStream memStream = new MemoryStream(100))
        {
            // Write the first string to the stream.
            memStream.Write(firstString, 0 , firstString.Length);

            // Write the second string to the stream, byte by byte.
            count = 0;
            while(count < secondString.Length)
            {
                memStream.WriteByte(secondString[count++]);
            }

            // Write the stream properties to the console.
            Console.WriteLine(
                "Capacity = {0}, Length = {1}, Position = {2}\n",
                memStream.Capacity.ToString(),
                memStream.Length.ToString(),
                memStream.Position.ToString());

            // Set the position to the beginning of the stream.
            memStream.Seek(0, SeekOrigin.Begin);

            // Read the first 20 bytes from the stream.
            byteArray = new byte[memStream.Length];
            count = memStream.Read(byteArray, 0, 20);

            // Read the remaining bytes, byte by byte.
            while(count < memStream.Length)
            {
                byteArray[count++] =
                    Convert.ToByte(memStream.ReadByte());
            }

            // Decode the byte array into a char array
            // and write it to the console.
            charArray = new char[uniEncoding.GetCharCount(
                byteArray, 0, count)];
            uniEncoding.GetDecoder().GetChars(
                byteArray, 0, count, charArray, 0);
            Console.WriteLine(charArray);
        }
    }
}
開發者ID:.NET開發者,項目名稱:System.IO,代碼行數:63,代碼來源:MemoryStream

示例2: new MemoryStream()

//引入命名空間
using System;
using System.IO;
using System.Drawing;
using System.Drawing.Imaging;

public class Analyzer {
    public static void Main() {
        Image sample = new Bitmap("a.jpg");
        MemoryStream buf = new MemoryStream();
        sample.Save(buf, ImageFormat.Bmp);
        byte[] currentImage = buf.GetBuffer();
        
        int[] stats = new int[3];
        for (int i = 0; i < currentImage.Length; ){
            for (int j = 0; j < 3; j++) {
                stats[j] += currentImage[i];
                ++i;
            }
        }    
        Console.WriteLine("Blue: " + stats[0]);
        Console.WriteLine("Green: " + stats[1]);
        Console.WriteLine("Red: " + stats[2]);
        if ((stats[0] > stats[1]) && (stats[0] > stats[2]))
            Console.WriteLine("This is a cold picture.");
        if ((stats[1] > stats[0]) && (stats[1] > stats[2]))
            Console.WriteLine("This is a summer picture.");
        if ((stats[2] > stats[0]) && (stats[2] > stats[1]))
            Console.WriteLine("This is a fiery picture.");
    }
}
開發者ID:C#程序員,項目名稱:System.IO,代碼行數:31,代碼來源:MemoryStream


注:本文中的System.IO.MemoryStream類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。