C# MemoryStream.ToArray的代码示例

通过代码示例来学习C# MemoryStream.ToArray方法

通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。


MemoryStream.ToArray是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的MemoryStream.ToArray() 已经帮大家高亮显示了,大家可以重点学习MemoryStream.ToArray() 方法的写法,从而快速掌握该方法的应用。

MemoryStream.ToArray的代码示例1 - Create()

    using System.IO;

    #endregion

    #region Public Methods

    /// 
    /// Creates a document using a Stream.
    /// 
    /// The Stream to create the document from.
    /// 
    /// Returns a Document object which represents the document.
    /// 
    /// Creating a document from a FileStream.
    /// 
    /// // Use a FileStream fs to create a new document.
    /// using(FileStream fs = new FileStream(@"C:\Example\Test.docx", FileMode.Create))
    /// {
    ///     // Load the document using fs
    ///     using (var document = DocX.Create(fs))
    ///     {
    ///         // Do something with the document here.
    ///
    ///         // Save all changes made to this document.
    ///         document.Save();
    ///     }// Release this document from memory.
    /// }
    /// 
    /// 
    /// 
    /// Creating a document in a SharePoint site.
    /// 
    /// using(SPSite mySite = new SPSite("http://server/sites/site"))
    /// {
    ///     // Open a connection to the SharePoint site
    ///     using(SPWeb myWeb = mySite.OpenWeb())
    ///     {
    ///         // Create a MemoryStream ms.
    ///         using (MemoryStream ms = new MemoryStream())
    ///         {
    ///             // Create a document using ms.
    ///             using (var document = DocX.Create(ms))
    ///             {
    ///                 // Do something with the document here.
    ///
    ///                 // Save all changes made to this document.
    ///                 document.Save();
    ///             }// Release this document from memory
    ///
    ///             // Add the document to the SharePoint site
    ///             web.Files.Add("filename", ms.ToArray(), true);
    ///         }
    ///     }
    /// }
    /// 
    /// 
    /// 
    /// 
    /// 
    public static DocX Create( Stream stream, DocumentTypes documentType = DocumentTypes.Document )
    {
      var docX = new DocX( null, null ) as Xceed.Document.NET.Document;
      Xceed.Document.NET.Document.PrepareDocument( ref docX, documentType );
      docX._stream = stream;
      return docX as DocX;
    }
    

开发者ID:xceedsoftware,项目名称:DocX,代码行数:66,代码来源:DocX.cs

在Create()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例2 - OnOpenFileStream()

    using System.IO;

        private Stream OnOpenFileStream(string path, FileMode mode, FileAccess access)
        {
            this.openedPaths.Add(path);

            if (this.pathsToData.TryGetValue(path, out MemoryStream stream))
            {
                this.pathsToData[path] = new MemoryStream(stream.ToArray());
            }
            else
            {
                this.pathsToData[path] = new MemoryStream();
            }

            return this.pathsToData[path];
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:17,代码来源:GitObjectsTests.cs

在OnOpenFileStream()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例3 - RunPrefetchPacksDeserializerTest()

    using System.IO;

        private void RunPrefetchPacksDeserializerTest(int packCount, bool withIndexes)
        {
            using (MemoryStream ms = new MemoryStream())
            {
                long[] packTimestamps = Enumerable.Range(0, packCount).Select(x => (long)x).ToArray();

                // Write the data to the memory stream.
                this.WriteToSpecs(ms, packTimestamps, withIndexes);
                ms.Position = 0;

                Dictionary>> receivedPacksAndIndexes = new Dictionary>>();

                foreach (PrefetchPacksDeserializer.PackAndIndex pack in new PrefetchPacksDeserializer(ms).EnumeratePacks())
                {
                    List> packsAndIndexesByUniqueId;
                    if (!receivedPacksAndIndexes.TryGetValue(pack.UniqueId, out packsAndIndexesByUniqueId))
                    {
                        packsAndIndexesByUniqueId = new List>();
                        receivedPacksAndIndexes.Add(pack.UniqueId, packsAndIndexesByUniqueId);
                    }

                    using (MemoryStream packContent = new MemoryStream())
                    using (MemoryStream idxContent = new MemoryStream())
                    {
                        pack.PackStream.CopyTo(packContent);
                        byte[] packData = packContent.ToArray();
                        packData.ShouldMatchInOrder(PackForTimestamp(pack.Timestamp));
                        packsAndIndexesByUniqueId.Add(Tuple.Create("pack", pack.Timestamp));

                        if (pack.IndexStream != null)
                        {
                            pack.IndexStream.CopyTo(idxContent);
                            byte[] idxData = idxContent.ToArray();
                            idxData.ShouldMatchInOrder(IndexForTimestamp(pack.Timestamp));
                            packsAndIndexesByUniqueId.Add(Tuple.Create("idx", pack.Timestamp));
                        }
                    }
                }

                receivedPacksAndIndexes.Count.ShouldEqual(packCount, "UniqueId count");

                foreach (List> groupedByUniqueId in receivedPacksAndIndexes.Values)
                {
                    if (withIndexes)
                    {
                        groupedByUniqueId.Count.ShouldEqual(2, "Both Pack and Index for UniqueId");

                        // Should only contain 1 index file
                        groupedByUniqueId.ShouldContainSingle(x => x.Item1 == "idx");
                    }

                    // should only contain 1 pack file
                    groupedByUniqueId.ShouldContainSingle(x => x.Item1 == "pack");

                    groupedByUniqueId.Select(x => x.Item2).Distinct().Count().ShouldEqual(1, "Same timestamps for a uniqueId");
                }
            }
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:60,代码来源:PrefetchPacksDeserializerTests.cs

在RunPrefetchPacksDeserializerTest()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例4 - GetEmbeddedData()

    using System.IO;

        /// 
        /// Extracts the data embedded into MSI (into Binary table).
        /// 
        /// The session.
        /// The name on resource in the Binary table.
        /// 
        public static byte[] GetEmbeddedData(this Session session, string binary)
        {
            //If binary is accessed this way it will raise "stream handle is not valid" exception
            //object result = session.Database.ExecuteScalar("select Data from Binary where Name = 'Fake_CRT.msi'");
            //Stream s = (Stream)result;
            //using (FileStream fs = new FileStream(@"....\Wix# Samples\Simplified Bootstrapper\Fake CRT1.msi", FileMode.Create))
            //{
            //    int Length = 256;
            //    var buffer = new Byte[Length];
            //    int bytesRead = s.Read(buffer, 0, Length);
            //    while (bytesRead > 0)
            //    {
            //        fs.Write(buffer, 0, bytesRead);
            //        bytesRead = s.Read(buffer, 0, Length);
            //    }
            //}

            //however View approach is OK
            using (var sql = session.Database.OpenView("select Data from Binary where Name = '" + binary + "'"))
            {
                sql.Execute();

                using (var record = sql.Fetch())
                using (var stream = record.GetStream(1))
                using (var ms = new IO.MemoryStream())
                {
                    int Length = 256;
                    var buffer = new Byte[Length];
                    int bytesRead = stream.Read(buffer, 0, Length);
                    while (bytesRead > 0)
                    {
                        ms.Write(buffer, 0, bytesRead);
                        bytesRead = stream.Read(buffer, 0, Length);
                    }
                    ms.Seek(0, IO.SeekOrigin.Begin);
                    return ms.ToArray();
                }
            }
        }
    

开发者ID:oleg-shilo,项目名称:wixsharp,代码行数:47,代码来源:Extensions.cs

在GetEmbeddedData()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例5 - CreateNewBFRESSwitch()

    using System.IO;

        private static byte[] CreateNewBFRESSwitch(string Name)
        {
            MemoryStream mem = new MemoryStream();

            ResFile resFile = new ResFile();
            resFile.Name = Name;

            resFile.Save(mem);
            var data = mem.ToArray();

            mem.Close();
            mem.Dispose();
            return data;
        }
    

开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:16,代码来源:BFRES.cs

在CreateNewBFRESSwitch()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例6 - SaveBNTXArray()

    using System.IO;

        private static void SaveBNTXArray(Stream stream, List Containers)
        {
            IsSavingArray = true;

            int Alignment = 4096;
            using (var saver = new FileWriter(stream, true))
            {
                foreach (var container in Containers)
                {
                    var mem = new System.IO.MemoryStream();
                    container.Save(mem);
                    saver.Write(mem.ToArray());
                    saver.Align(Alignment);
                }
            }

            IsSavingArray = false;
        }
    

开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:20,代码来源:BNTX.cs

在SaveBNTXArray()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例7 - Load()

    using System.IO;

        #endregion

        public void Load(System.IO.Stream stream)
        {
            PluginRuntime.BxfntFiles.Add(this);

            CanSave = true;

            bffnt = new FFNT();
            bffnt.Read(new FileReader(stream));

            TGLP tglp = bffnt.FontSection.TextureGlyph;

            if (tglp.SheetDataList.Count > 0)
            {
                if (bffnt.Platform == FFNT.PlatformType.NX)
                {
                    var bntx = STFileLoader.OpenFileFormat(
                        new MemoryStream(Utils.CombineByteArray(tglp.SheetDataList.ToArray())), "Sheet_0");
                    if (bntx != null)
                    {
                        tglp.BinaryTextureFile = (BNTX)bntx;
                    }
                }
                else if (bffnt.Platform == FFNT.PlatformType.Cafe)
                {
                    for (int s = 0; s < tglp.SheetDataList.Count; s++)
                    {
                        var surface = new Gx2ImageBlock();
                        surface.Text = $"Sheet_{s}";
                        surface.Load(tglp, s);
                        tglp.Textures.Add(surface);
                    }
                }
                else if (bffnt.Platform == FFNT.PlatformType.Ctr)
                {
                    for (int s = 0; s < tglp.SheetDataList.Count; s++)
                    {
                        var surface = new CtrImageBlock();
                        surface.Text = $"Sheet_{s}";
                        surface.Load(tglp, s);
                        surface.GetBitmap().Save($"Image{s}.png");
                        tglp.Textures.Add(surface);
                    }
                }
                else
                {
                    for (int s = 0; s < tglp.SheetDataList.Count; s++)
                    {
                        var surface = new RevImageBlock();
                        surface.Text = $"Sheet_{s}";
                        surface.Load(tglp, s);
                        surface.GetBitmap().Save($"Image{s}.png");
                        tglp.Textures.Add(surface);
                    }
                }
            }

            int i = 0;
            foreach (byte[] texture in tglp.SheetDataList)
            {
                //   BNTX file = (BNTX)STFileLoader.OpenFileFormat("Sheet" + i++, texture);
                //  Nodes.Add(file);
            }
        }
    

开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:67,代码来源:BXFNT.cs

在Load()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

MemoryStream.ToArray的代码示例8 - WriteShaderParams()

    
        public static byte[] WriteShaderParams(this FMAT m, Material mat)
        {
            mat.ShaderParams = new List();

            System.IO.MemoryStream mem = new System.IO.MemoryStream();
            using (FileWriter writer = new FileWriter(mem))
            {
                uint Offset = 0;
                int index = 0;
                writer.ByteOrder = Syroot.BinaryData.ByteOrder.LittleEndian;
                foreach (BfresShaderParam shaderParam in m.matparam.Values)
                {
                    ShaderParam param = new ShaderParam();
                    param.Name = shaderParam.Name;
                    param.Type = shaderParam.Type;
                    param.DataOffset = (ushort)Offset;
                    param.DependedIndex = (ushort)index;
                    param.DependIndex = (ushort)index;
                    param.DependedIndex = shaderParam.DependedIndex;
                    param.DependIndex = shaderParam.DependIndex;

                    writer.Seek(param.DataOffset, System.IO.SeekOrigin.Begin);
                    shaderParam.WriteValue(writer);

                    Offset += param.DataSize;
                    mat.ShaderParams.Add(param);
                    index++;
                }
                writer.Close();
            }
            return mem.ToArray();
        }
    

开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:33,代码来源:BfresSwitch.cs

在WriteShaderParams()方法中,MemoryStream的代码示例类中的ToArray的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

本文中的MemoryStream.ToArray方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。