标签: memorystream

可以将2D字节数组制成一个巨大的连续字节数组吗?

我在内存中有一个非常大的2D字节数组,

byte MyBA = new byte[int.MaxValue][10];
Run Code Online (Sandbox Code Playgroud)

有什么方法(可能是不安全的)我可以欺骗C#认为这是一个巨大的连续字节数组?我想这样做,以便我可以将它传递给a MemoryStream然后a BinaryReader.

MyReader = new BinaryReader(MemoryStream(*MyBA)) //Syntax obviously made-up here
Run Code Online (Sandbox Code Playgroud)

c# memorystream large-data

3
推荐指数
1
解决办法
1761
查看次数

C#如何将MessageBodyStream转换为MemoryStream?

我从WCF服务返回一个流,并尝试将其转换为Web应用程序中的MemoryStream.But,其中使用WCF服务,我从"MessageBodyStream"获取结果,我期待"System.IO.Stream" ".我怎样才能将其转换为MemoryStream?

c# memorystream

3
推荐指数
1
解决办法
7604
查看次数

通过 LibTiff.Net 从 Stream 加载的 Tiff 没有字段值

我的应用程序必须处理存储在 MemoryStream 中的 TIFF 文件,但 LibTiff.Net 始终返回null字段值。

        MemoryStream ms = new MemoryStream();
        FileStream fs = new FileStream("testfile.tif", FileMode.Open);
        fs.CopyTo(ms);

        //It seems (memory) streams have to be opened in write mode, "r" always returns <null>
        Tiff tiff = Tiff.ClientOpen("someArbitraryName", "w", ms, new TiffStream());

        FieldValue[] imageHeight = tif.GetField(TiffTag.IMAGELENGTH);
Run Code Online (Sandbox Code Playgroud)

直接打开文件进行读取Tiff.Open效果很好。

这是 LibTiff.Net 库中的错误还是我遗漏了什么?

.net c# tiff memorystream libtiff.net

3
推荐指数
1
解决办法
2792
查看次数

使用PDF itextSharp可以在创建pdf文档时将图像放在文本顶部

我尝试了几种方法来做到这一点,但仍然无法得到它.似乎iTextSharp需要2遍情况,以便图像出现在文本的顶部.所以我试图使用内存流来做到这一点,但我一直在收到错误.

    Public Function createDoc(ByRef reqResponse As HttpResponse) As Boolean

        Dim m As System.IO.MemoryStream = New System.IO.MemoryStream()
        Dim document As Document = New Document()
        Dim writer As PdfWriter = iTextSharp.text.pdf.PdfWriter.GetInstance(document, m)
        document.Open()
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Add(New Paragraph(DateTime.Now.ToString()))
        document.Close()
        writer.Flush()
        writer.Flush()
        'yes; I get the pdf if this is the last statement
        'reqResponse.OutputStream.Write(m.GetBuffer(), 0, m.GetBuffer().Length)

        'this statment does not work it says the stream is closed
        'm.Position = 0
        Dim Reader As PdfReader …
Run Code Online (Sandbox Code Playgroud)

memorystream response itextsharp

3
推荐指数
1
解决办法
9708
查看次数

如何用 0xFF 字节填充 MemoryStream?

我有一个MemoryStream在运行时从文件创建的。

然后对其MemoryStream进行编辑并删除一些字节。

现在我必须维护一个恒定的文件大小,所以我必须MemoryStream用 0xFF 字节填充..

执行此操作最快的方法是什么?

我知道,我总是可以循环遍历MemoryStream大小并添加 0xFF,但我需要知道一种更快、更有效的方法来做到这一点!

c# memorystream padding

3
推荐指数
1
解决办法
2886
查看次数

如何使用封闭的 xml 将创建的 excel 文件转换为字节格式

嗨,我正在使用 closedxml DLL 导出到 excel 我有如下静态方法

    public static void WriteToExcel(string fileName, List<CP> pages)
    {
        var wb = new XLWorkbook();
        byte[] file;


        var ws = wb.Worksheets.Add("CPs");
        WriteCostHeader(ws);

        ////write all the header columns
        //for (int i = 0; i < pages.Count; i++)
        int iRow = 2;
        foreach(var page in pages)
        {
            WriteCostPage(ws, page, iRow++);                

            WriteCostItemHead(ws, iRow++);

            foreach(var item in page.Items)
            {
                WriteCostItem(ws, item, iRow++);
            }
            iRow++;
        }

       wb.SaveAs(fileName);           
    }
Run Code Online (Sandbox Code Playgroud)

我在下面这样的方法中调用上面的函数

public  static List<CP> Init()
{

    //binding items to to list
}

static …
Run Code Online (Sandbox Code Playgroud)

.net c# excel memorystream export-to-excel

3
推荐指数
2
解决办法
1万
查看次数

使用csvhelper和memorystream时字节长度错误

我使用CSVHelper将对象列表转换为csv然后将其保存到FTP - 但内容的长度未正确计算,因此内容的末尾被截断.谁能看到我在这里做错了什么;

    using (var memoryStream = new MemoryStream())
      {
        using (var streamWriter = new StreamWriter(memoryStream))
        {
          using (var csvWriter = new CsvWriter(streamWriter))
          {
            csvWriter.Configuration.Delimiter = ";";
            csvWriter.Configuration.HasHeaderRecord = false;
            csvWriter.WriteRecords<MyObject>(myObjectList);

            var request = (FtpWebRequest)WebRequest.Create(".../my.csv");
            request.Method = WebRequestMethods.Ftp.UploadFile;
            request.Credentials = new NetworkCredential("user", "pass");
            request.ContentLength = memoryStream.Length;
            byte[] fileContents = memoryStream.ToArray();
            Stream requestStream = request.GetRequestStream();
            requestStream.Write(fileContents, 0, fileContents.Length);
            requestStream.Close();
            FtpWebResponse response = (FtpWebResponse)request.GetResponse();
            response.Close();
          }
        }
      }
    }
Run Code Online (Sandbox Code Playgroud)

memoryStream.Length和fileContents.Length都给出了相同的数字,但与实际数据量相比,它很小.

c# memorystream streamwriter ftpwebrequest csvhelper

3
推荐指数
1
解决办法
1049
查看次数

argumentnullexception位图保存到memorystream

我正在尝试将我的Bitmap保存到MemoryStream - 这段代码有什么问题?为什么它让我争论?

private void insertBarCodesToPDF(Bitmap barcode)
    {

            .......
            MemoryStream ms = new MemoryStream();
            barcode.Save(ms, System.Drawing.Imaging.ImageFormat.MemoryBmp); //<----
            byte [] qwe = ms.ToArray();
            .......

    }
Run Code Online (Sandbox Code Playgroud)

UPD: WordTest.FormTestWord.insertBarCodesToPDF(位图条形码)中的StackTrace System.Drawing.Image.Save(Stream stream,ImageCodecInfo encoder,EncoderParameters encoderParams)

c# memorystream bitmap save

3
推荐指数
1
解决办法
1875
查看次数

Stream.Read 始终返回 0

我们使用的是asp.net的Asyncfileupload控件来上传文件,同样不行我们调试了一下,发现这样的代码:

input.Read(buffer, 0, buffer.Length)
Run Code Online (Sandbox Code Playgroud)

返回 0。

整个代码是这样的:

public static byte[] ReadFully(Stream input)
    {
        byte[] buffer = new byte[input.Length];
        using (MemoryStream ms = new MemoryStream())
        {
            int read;
            while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
            {
                ms.Write(buffer, 0, read);
            }
            return ms.ToArray();
        }
    }
Run Code Online (Sandbox Code Playgroud)

asp.net memorystream filestream asyncfileupload

3
推荐指数
1
解决办法
3591
查看次数

使用 MemoryStream 打开 XML WordprocessingDocument 为 0KB

我正在尝试学习如何使用 Microsoft 的 Open XML SDK。我按照他们关于如何使用 a 创建 Word 文档的步骤进行操作FileStream,效果非常好。现在我想创建一个Word文档,但仅在内存中,并等待用户指定是否要保存该文件。

Microsoft 的这份文档说明了如何使用 处理内存中的文档MemoryStream,但是,该文档首先从现有文件加载并“转储”到MemorySteam. 我想要的是完全在内存中创建文档(而不是基于驱动器中的文件)。我认为可以实现这一点的是这段代码:

// This is almost the same as Microsoft's code except I don't
// dump any files into the MemoryStream
using (var mem = new MemoryStream())
{
    using (var doc = WordprocessingDocument.Create(mem, WordprocessingDocumentType.Document, true))
    {
        doc.AddMainDocumentPart().Document = new Document();
        var body = doc.MainDocumentPart.Document.AppendChild(new Body());
        var paragraph = body.AppendChild(new Paragraph());
        var run = paragraph.AppendChild(new Run());
        run.AppendChild(new Text("Hello docx"));

        using (var file …
Run Code Online (Sandbox Code Playgroud)

c# memorystream ms-word openxml .net-core

3
推荐指数
1
解决办法
6712
查看次数