//String 转 Buffer
private IBuffer GetBufferFromString(String str)
{
using (InMemoryRandomAccessStream memoryStream = new InMemoryRandomAccessStream())
{
using (DataWriter dataWriter = new DataWriter(memoryStream))
{
dataWriter.WriteString(str);
return dataWriter.DetachBuffer();
}
}
} //Buffer 转 String
private String GetStringFromBuffer(IBuffer buffer)
{
using (DataReader dataReader = DataReader.FromBuffer(buffer))
{
return dataReader.ReadString(buffer.Length);
}
} //Stream 转 IInputStream IInputStream inputStream = stream.AsInputStream(); //IInputStream 转 Stream stream = inputStream.AsStreamForRead(); //Stream 转 IOutputStream IOutputStream outputStream = stream.AsOutputStream(); //IOutputStream 转 Stream stream = outputStream.AsStreamForRead(); //Stream 转 IRandomAccessStream IBuffer buffer = null; var inputstream = stream.AsInputStream(); using (var dataReader = new DataReader(inputstream)) { await dataReader.LoadAsync((uint)stream.Length); buffer = dataReader.DetachBuffer(); } var iRandomAccessStream = new InMemoryRandomAccessStream(); await iRandomAccessStream.WriteAsync(buffer); // IRandomAccessStream 转 Stream stream = iRandomAccessStream.AsStream(); //Ibuffer转byte[] byte[] bytes = WindowsRuntimeBufferExtensions.ToArray(buffer,,(int)buffer.Length); //Byte[]转Ibuffer IBuffer buffer = WindowsRuntimeBufferExtensions.AsBuffer(bytes,,bytes.Length); //Ibuffer转Stream Stream stream = WindowsRuntimeBufferExtensions.AsStream(buffer); //Stream转Ibuffer MemoryStream memoryStream = new MemoryStream(); if (stream != null) { byte[] bytes = ReadFully(stream); if (bytes != null) { var binaryWriter = new BinaryWriter(memoryStream); binaryWriter.Write(bytes); } } IBuffer buffer=WindowsRuntimeBufferExtensions.GetWindowsRuntimeBuffer(memoryStream,,(int)memoryStream.Length); //Ibuffer转byte[] byte[] bytes=WindowsRuntimeBufferExtensions.ToArray(buffer,,(int)buffer.Length); //Byte[]转Ibuffer WindowsRuntimeBufferExtensions.AsBuffer(bytes,,bytes.Length); //Ibuffer转IrandomAccessStream InMemoryRandomAccessStream inStream = new InMemoryRandomAccessStream(); DataWriter datawriter = new DataWriter(inStream.GetOutputStreamAt()); datawriter.WriteBuffer(buffer,,buffer.Length); await datawriter.StoreAsync(); //IrandomAccessStream转Ibuffer Stream stream=WindowsRuntimeStreamExtensions.AsStreamForRead(randomStream.GetInputStreamAt()); MemoryStream memoryStream = new MemoryStream(); if (stream != null) { byte[] bytes = await ConvertStreamTobyte(stream); if (bytes != null) { var binaryWriter = new BinaryWriter(memoryStream); binaryWriter.Write(bytes); } } IBuffer buffer=WindowsRuntimeBufferExtensions.GetWindowsRuntimeBuffer(memoryStream,,(int)memoryStream.Length); //Stream转byte[] public async Task<byte[]> ConvertStreamTobyte(Stream stream) { MemoryStream ms = new MemoryStream(); await stream.CopyToAsync(ms); return ms.ToArray(); } //Byte转Stream public Stream BytesToStream(byte[] bytes) { Stream stream = new MemoryStream(bytes); return stream; } //Byte[] -> BitmapImage public async Task<BitmapImage> ByteArrayToImageAsync(byte[] pixeByte) { using (InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream()) { stream.Seek(); IBuffer buffer = WindowsRuntimeBufferExtensions.AsBuffer(pixeByte, , pixeByte.Length); await stream.WriteAsync(buffer); BitmapImage image = new BitmapImage(); image.SetSource(stream); return image; } }

最新文章

  1. 用Myisamchk让MySQL数据表更健康
  2. Java中的路径问题
  3. (转)PHP ob_start() 函数介绍
  4. Sogou搜狗搜索引擎登录网站 - Blog透视镜
  5. [POJ] String Matching
  6. 最常用的缓存技术---redis入门
  7. CSS实现自适应不同大小屏幕的背景大图
  8. S0.4 二值图与阈值化
  9. 01 jmeter性能测试系列_Jmeter的体系结构
  10. css利用padding百分比实现图片自适应高度
  11. nltk的使用
  12. JSP九大内置对象辨析
  13. Java编程的逻辑 (33) - Joda-Time
  14. C#深入浅出获取时间DateTime
  15. Weblogic申请和配置SSL证书
  16. Robot Framework 教程 (1) - 环境配置及简单网站兼容性测试
  17. c#开发Android初学(一)
  18. Linux rpm yum 等安装软件
  19. js 光标选中 操作
  20. java 重写 与 重载 用法

热门文章

  1. NOIP模拟 poke - 贪心
  2. 关于 Mesos,你知道多少?13 个问题带你深入了解 Mesos
  3. WPF 触摸到事件
  4. 使用readLine()方法遇到的坑
  5. 在项目中使用CLR规划
  6. WPF 修改图片颜色
  7. IP packet transmission using vehicular transport
  8. 机器学习: Viola-Jones 人脸检测算法解析(一)
  9. 【STL】关联容器 — hashtable
  10. C++ Primer Plus的若干收获--(十一)