封送切片结果为字符串

2023-12-01

我正在尝试对一部分进行 json 编码uint8值,但这样做会产生字符串。举个例子,这个:

d := []uint8{1,2,3,4}
data, err := json.Marshal(d)
fmt.Println(string(data), err)

结果是:

"AQIDBA==" <nil>

我正期待着[1,2,3,4],但我得到的是这个奇怪的字符串。Here是一个带有此代码的游乐场。


那是因为你使用uint8输入您的号码,然后uint8是一个别名byte (规格:数字类型)。默认情况下,字节数组和切片使用 Base64 编码进行编码,这就是您所看到的 ("AQIDBA=="是字节的 Base64 编码文本[1, 2, 3, 4]).

引用自json.Marhsal() doc:

数组和切片值编码为 JSON 数组,但 []byte 编码为 Base64 编码字符串,而 nil 切片编码为 null JSON 对象。

更改您的号码类型uint or int例如,然后你就会看到你所期望的。

例如 (去游乐场):

type MyStruct struct {
    Data []uint
}

d := new(MyStruct)
d.Data = []uint{1, 2, 3, 4}

data, err := json.Marshal(d)
fmt.Println(string(data), err)

Output:

{"Data":[1,2,3,4]} <nil>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

封送切片结果为字符串 的相关文章

随机推荐

  • Tomcat Windows 服务器中启用 SSL

    我想在 Windows Server 2008 和 tomcat 7 上的网站上启用 https 我从证书网站获得以下文件 ca crt pem csr pkcs 我知道我必须在 tomcat 的 server xml 中添加以下内容
  • 实体框架如何与递归层次结构一起工作? Include() 似乎不适用于它

    我有一个Item Item has a Category Category has ID Name Parent and Children Parent and Children are of Category too 当我对特定的实体执行
  • 在嵌入式 Linux 平台上使用 std::string 时出现段错误

    我已经花了几天时间来解决我的应用程序在嵌入式 Arm Linux 平台上运行的问题 不幸的是 该平台阻止我使用任何常用的有用工具来查找确切的问题 当相同的代码在运行 Linux 的 PC 上运行时 我没有收到这样的错误 在下面的示例中 我可
  • 网络调用后绑定到 UIRefreshControl

    我是 RxSwift 的新手 我想知道如何能够 反应性 地将 UIRefreshControl 与 UITableView 一起使用 而不是创建目标并手动调用的正常方式beginRefreshing and endRefreshing 例如
  • 如何自定义人性化Moment js日期结果

    我想用 moment js 自定义人性化的日期结果 假设我有一个约会 我想利用剩余时间 3 个月内 返回结果 moment 20141001 YYYYMMDD fromNow in 3 months 我如何自定义结果字符串 例如3 mont
  • 如何访问 Angular 2 组件和服务中的常量?

    我有一个常量文件常量 ts export const C0NST constant 我在服务中访问它一些服务 ts像这样 import C0NST from constants console log C0NST constant 但是 当
  • 我如何改进我的 opencv 程序以仅检测人行横道?

    我想检测下图中的人行横道 并用红色填充它 但程序也会检测其他东西 这是我的代码 import cv2 import numpy as np img cv2 imread zebra lane jpg cv2 imshow kep img i
  • 为什么 iOS 9 中纬度和经度显示为零?

    我必须找到当前位置并且我正在使用此代码 CLLocationCoordinate2D getLocation locationManager CLLocationManager alloc init locationManager dele
  • 一个单元格中多个条件的 Excel 匹配索引

    我有一个电子表格 它是根据 Microsoft Sharepoint 中的数据自动填充的 不幸的是 这些数据填充了我的位置列 如下所示 IND ENG USA 例如 如果该特定输入有 3 个位置 然后 我使用下拉框 通过数据验证制作 来过滤
  • 如何修复此正则表达式以便它正确替换 * (在单词之间)?

    我正在练习正则表达式 我想创建正则表达式 into em 就像使用 Markdown 一样 el el replace b g em el el replace b s g 1 em 这在大多数情况下都有效 但是 如果您将正则表达式应用于此
  • 如何将变量的值放入字符串中(将其插入字符串中)?

    我想放一个int into a string 这就是我现在正在做的事情 num 40 plot savefig hanning40 pdf problem line 我必须为几个不同的数字运行该程序 所以我想做一个循环 但是像这样插入变量不
  • For 循环除数

    对于 C 我是一个业余爱好者 但我已经收到了一项超出我知识范围的任务 任务是输入数字 n m 程序必须将其视为一个区间 在区间中检查是否存在相同指数的数字之和 编辑 15 10 18 事实证明我没有正确理解我的任务 这里是 用户输入两个数字
  • 使用 SQL JOIN 和 COUNT

    假设有两张表 一张保存用户信息 一张保存某种类型的用户记录 例如收据 用户和收据之间存在一对多的关系 检索用户 按最大收据数量排序 的最佳 SQL 方法是什么 我能想到的最好方法是使用 join 和 count 返回用户数组及其相关收据数量
  • on:click 在 Svelte 中更新 DOM 时不起作用

    The send random 当我将其添加为新添加的 DOM 中的指令时 它不起作用 for let i 0 i lt items length i data div class block received span class ite
  • Selenium WebDriver CSS 选择器帮助 - 用于选择日期

    我需要从小窗口中选择日期 下面是 html 代码示例 有人可以帮我通过 CSSSelector 或任何其他最适合执行此任务的方式选择日期吗 td class a class ui state default href 1 a td td c
  • Bootstrap - 5 列布局

    我正在尝试获得 5 列全宽布局 但找不到适合我需求的解决方案 这是我使用的代码 div class container div class row div class col lg 12 style border 1px solid red
  • 如何共享 Facebook 页面选项卡内部页面的内容?

    我正在尝试共享页面选项卡内部页面上的内容 此页面上的每个项目都有一个 赞 按钮 我想将用户重定向到该页面并通过 JS 滚动到该项目 我最好不要透露该网站的真实网址 换句话说 分享这样的事情 问题是当我尝试分享上面的网址时 Facebook
  • NSData 存储在某处

    最近我创建了一个帖子 NSData 缓存例程 但是 现在我想更具体地说明我的要求 你看 我有 轮播 这实际上是一个有 7 个图像的滚动视图 当它第一次出现时 它会从互联网加载图像并自动滚动 我的问题是 我不想每次滚动时都加载图像 幸运的是
  • 获取我的 wifi IP 地址 Android

    当手机连接wifi时 如何获取手机的ip地址 我找到了一个方法here但即使我在 wifi 下 它也会返回类似 24 182 239 255 的东西 并且我期望类似 192 168 1 10 的东西 我想要这样的东西 if you are
  • 封送切片结果为字符串

    我正在尝试对一部分进行 json 编码uint8值 但这样做会产生字符串 举个例子 这个 d uint8 1 2 3 4 data err json Marshal d fmt Println string data err 结果是 AQI