前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UWP 转换 IBuffer 和其他类型

UWP 转换 IBuffer 和其他类型

作者头像
林德熙
发布2019-12-04 16:14:07
1.1K0
发布2019-12-04 16:14:07
举报
文章被收录于专栏:林德熙的博客林德熙的博客

本文告诉大家在 UWP 如何转换 IBuffer 为 string 和 stream 类

byte 数组转 IBuffer

使用下面代码可以将 byte 数组转 IBuffer

代码语言:javascript
复制
using System.Runtime.InteropServices.WindowsRuntime;

            byte[] byteList = xx;
            IBuffer buffer = byteList.AsBuffer();

这里的 AsBuffer 是扩展方法所以需要使用 using 的方法

代码语言:javascript
复制
using System.Runtime.InteropServices.WindowsRuntime;

            IBuffer buffer = xx;
            var byteList = buffer.ToArray();

string 转 IBuffer

可以使用两个方式,第一个方式是将 string 转换为 byte 数组,请看代码

代码语言:javascript
复制
    using System.Text;

            byteList = Encoding.UTF8.GetBytes(str);

从数组转 string 的方法请看下面

代码语言:javascript
复制
    using System.Text;
  
            var str = Encoding.UTF8.GetString(byteList);

转换为 byte 数组就可以使用上面的方法转换为 IBuffer 但是在这样可以看到方法的代码有些多,可以使用下面的方法快速转换

通过 CryptographicBuffer 类可以将 string 转换为 IBuffer 请看代码

代码语言:javascript
复制
 using Windows.Security.Cryptography;

            IBuffer buffer = CryptographicBuffer.ConvertStringToBinary(str, BinaryStringEncoding.Utf8);

            str = CryptographicBuffer.ConvertBinaryToString(BinaryStringEncoding.Utf8, buffer);

本文会经常更新,请阅读原文: https://blog.lindexi.com/post/UWP-%E8%BD%AC%E6%8D%A2-IBuffer-%E5%92%8C%E5%85%B6%E4%BB%96%E7%B1%BB%E5%9E%8B.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • byte 数组转 IBuffer
  • string 转 IBuffer
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档