jjzjj

MemoryStream

全部标签

c# - Stream.CopyTo 和 MemoryStream.WriteTo 之间的区别

我有一个HttpHandler通过Response.OutputStream返回图像。我有以下代码:_imageProvider.GetImage().CopyTo(context.Response.OutputStream);GetImage()方法返回一个Stream,它实际上是一个MemoryStream实例,它向浏览器返回0个字节。如果我更改GetImage()方法签名以返回MemoryStream并使用以下代码行:_imageProvider.GetImage().WriteTo(context.Response.OutputStream);它起作用了,浏览器得到了一张图片。

c# - MemoryStream 似乎在 NPOI workbook.write 之后关闭?

我正在使用NPOI在ASP.NETWebAPI项目中将DataTable转换为Excel。但是我从响应中一无所获。这是我的代码:publicHttpResponseMessageGetExcelFromDataTable(DataTabledt){IWorkbookworkbook=newXSSFWorkbook();//create*.xlsxfile,useHSSFWorkbook()forcreating*.xlsfile.ISheetsheet1=workbook.CreateSheet();IRowrow1=sheet1.CreateRow(0);for(inti=0;dt.

c# - MemoryStream 似乎在 NPOI workbook.write 之后关闭?

我正在使用NPOI在ASP.NETWebAPI项目中将DataTable转换为Excel。但是我从响应中一无所获。这是我的代码:publicHttpResponseMessageGetExcelFromDataTable(DataTabledt){IWorkbookworkbook=newXSSFWorkbook();//create*.xlsxfile,useHSSFWorkbook()forcreating*.xlsfile.ISheetsheet1=workbook.CreateSheet();IRowrow1=sheet1.CreateRow(0);for(inti=0;dt.

C# iPhone 推送服务器?

我正在尝试用C#为iPhone编写一个推送服务器。我有以下代码://CreateaTCP/IPclientsocket.using(TcpClientclient=newTcpClient()){client.Connect("gateway.sandbox.push.apple.com",2195);using(NetworkStreamnetworkStream=client.GetStream()){Console.WriteLine("Clientconnected.");X509CertificateclientCertificate=newX509Certificate(@

C# iPhone 推送服务器?

我正在尝试用C#为iPhone编写一个推送服务器。我有以下代码://CreateaTCP/IPclientsocket.using(TcpClientclient=newTcpClient()){client.Connect("gateway.sandbox.push.apple.com",2195);using(NetworkStreamnetworkStream=client.GetStream()){Console.WriteLine("Clientconnected.");X509CertificateclientCertificate=newX509Certificate(@

c# - 名称不能以 ' ' 字符开头

我正在用C#解析一些XML。我从数据库中获取它,因此在使用XmlTextReader读取它之前将其转换为MemoryStream。问题是我收到此错误:名称不能以“”字符、十六进制值0x20开头。第1行,位置3。以下是我的XML和读取它的代码(它来自数据库,没有空白的第一个字符)。有什么建议吗?XML:C#:byte[]byteArray=newbyte[formXml.Length];System.Text.UTF8Encodingencoding=newSystem.Text.UTF8Encoding();byteArray=encoding.GetBytes(formXml);Me

c# - 名称不能以 ' ' 字符开头

我正在用C#解析一些XML。我从数据库中获取它,因此在使用XmlTextReader读取它之前将其转换为MemoryStream。问题是我收到此错误:名称不能以“”字符、十六进制值0x20开头。第1行,位置3。以下是我的XML和读取它的代码(它来自数据库,没有空白的第一个字符)。有什么建议吗?XML:C#:byte[]byteArray=newbyte[formXml.Length];System.Text.UTF8Encodingencoding=newSystem.Text.UTF8Encoding();byteArray=encoding.GetBytes(formXml);Me

c# 使用 memorystream 而不是 textwriter 创建文件

我有一个应用程序当前正在创建一个文本文件以导入到会计应用程序中。它使用以下代码创建文件并向其中写入行:TextWritertw=newStreamWriter(ExtractFileName);tw.WriteLine("ref\tACCOUNT\tbatch\tDEBIT\tCREDIT\tDesc");我现在需要创建多个提取文件并计划使用SharpZipLib(#ziplib)将它们压缩到一个.zip文件中,并且想更改我的代码以在“内存中”创建文本文件并使用它来创建我的压缩文件。我想我应该创建/使用MemoryStream,但不知道如何移植我现有的代码。谢谢。

c# 使用 memorystream 而不是 textwriter 创建文件

我有一个应用程序当前正在创建一个文本文件以导入到会计应用程序中。它使用以下代码创建文件并向其中写入行:TextWritertw=newStreamWriter(ExtractFileName);tw.WriteLine("ref\tACCOUNT\tbatch\tDEBIT\tCREDIT\tDesc");我现在需要创建多个提取文件并计划使用SharpZipLib(#ziplib)将它们压缩到一个.zip文件中,并且想更改我的代码以在“内存中”创建文本文件并使用它来创建我的压缩文件。我想我应该创建/使用MemoryStream,但不知道如何移植我现有的代码。谢谢。

C# 对象二进制序列化

我想对一个对象进行二进制序列化,并将结果保存在数据库中。Personperson=newPerson();person.Name="something";MemoryStreammemorystream=newMemoryStream();BinaryFormatterbf=newBinaryFormatter();bf.Serialize(memorystream,person);如何将memorystream转换为字符串类型以保存在数据库中,然后才能反序列化对象? 最佳答案 您真正要求的是一种将任意二进制数据表示为文本然后再将其