如何将 ubyte[] 解码为指定的编码?

2024-01-01

问题是:在运行时设置编码时如何解析文件?

编码可以是:utf-8, utf-16, latin1 or other

目标是将 ubyte[] 从所选编码转换为字符串。因为当您使用 std.stdio.File.byChunk 或 std.mmFile.MmFile 时,您将 ubyte[] 作为数据。


您是否正在尝试将文本文件转换为 utf-8? 如果答案是“是”,Phobos 具有专门用于此的功能:@trusted string toUTF8(in char[] s). See http://dlang.org/phobos/std_utf.html http://dlang.org/phobos/std_utf.html了解详情。

抱歉,如果这不是您需要的。

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

如何将 ubyte[] 解码为指定的编码? 的相关文章

  • ANTLR 中的浮点文字和范围参数

    我正在开发 D 语言的解析器 当我尝试添加 切片 运算符规则时遇到了麻烦 你可以找到它的ANTLR语法here 基本上问题是 如果词法分析器遇到这样的字符串 1 2 它就会完全丢失 并且最终成为单个浮点值 因此像 a 10 这样的字符串的后
  • D lang - 在同一程序中使用 read 和 readln()

    我的 D 程序遇到了一个非常奇怪的问题 read s variable 本身工作得很好 而 readln variable 本身工作得很好 但是当我将两者放在一起时 readln 似乎被忽略了 使用 gdc 和 dmd 均发生错误 impo
  • 在 OS X 上初始化 D 运行时

    编辑 这似乎是一个长期存在的问题 没有迫在眉睫的解决方案 http d puremagic com issues show bug cgi id 8133 http d puremagic com issues show bug cgi i
  • 实例化 redBlackTree 模板时出错

    我在用字符实例化 RedBlackTree 容器时遇到问题 但它可以与整数一起使用 import std stdio import std container void main auto r1 redBlackTree int works
  • 在 D2 中将 std.algorithm.map 与成员函数结合使用

    I have Foo foo new Foo foreach i 0 10 Bar bar foo getBar i 我希望能够 等效地 说 foreach bar foo getAllBars 我该如何实施getAllBars 我想了这样
  • 延迟读取 D 中的文件

    我正在用 D 编写一个目录树扫描函数 它尝试将 grep 和 file 等工具结合起来 并且仅当文件中的内容满足条件时才对文件中的内容进行条件 grepnot匹配一组指示文件类型的魔术字节 例如 ELF 图像等 在最小化文件 io 方面 使
  • SDL 窗口似乎被操作系统错误地标记为“无响应”

    我有一个通过 Derelict 3 访问的 SDL2 窗口 它应该是黑白频闪 不是因为我讨厌癫痫病患者 而且它成功地做到了这一点 然而 在一段时间后 Ubuntu 13 10 将窗口标记为 无响应 将其变灰 并使频闪效果变暗 这非常令人恼火
  • D 语言是否有多个标准库以及 GC 的问题?

    我想知道 D 有多成熟和稳定 以及它是否可以很好地替代 C C 我知道目前有两个标准库 Phobos 和 Tango 难道还是没有统一的标准库吗 另外 我不久前听说这些语言在 GCed 非 GCed 代码的边界上存在问题 我在D网站上找不到
  • D 有 HTML 解析吗?

    我正在寻找 D 语言的 HTML 解析 如果可能的话 支持 XPath 我做了一些谷歌搜索 但没有运气 很难找到带有 D 关键字的解决方案 就像C 我说 C 谷歌说C On http www dsource org http www dso
  • 模板约束内的模式匹配

    这个问题是基于安德烈的回答我关于签名限制的问题 https stackoverflow com questions 11378470 signature constrait for generic types struct S int x
  • 如果 main 为 void,D 如何在成功时返回 0,在失败时返回非零?

    在 D 中 main函数定义为 void main perhaps some args but I do not remember 我确信这个函数在成功时返回零 在失败时返回非零 但它被定义为不返回任何内容 其背后的逻辑是什么 Alexan
  • 泛型类型的签名约束

    struct S int a int b void fun T T t I want fun跟 共事S仅有的 签名约束是什么样的 我做不到fun的成员S 与void fun T T t if is T S I get Error struc
  • D 项目的 CMake 或 Waf

    我们正在寻找足够的构建工具 用于用 D 语言 使用 Qt 工具包 编写桌面 GUI 应用程序 由多个本机库组成 使用第 3 方 C lib 它必须在 Linux 本机开发 和 Mac 以及 Windows 上构建 我们可能会采用代码 块 h
  • 在 D 中制作结构体的堆副本

    如何创建堆栈上结构的垃圾收集副本 来自 C 背景 我的第一个猜测是像下面这样的复制构造函数 但它对于 D 来说似乎不太惯用 而且我在我看过的任何 D 项目中都没有看到过这样的复制构造函数 struct Foo immutable int b
  • D 中的枚举与不可变

    有什么区别 enum i 2 enum s Hello and immutable i 2 immutable s Hello 在 D 2 0 中 An enum是用户定义的类型 而不是变量 enum e 2 是一个 像这样的东西的简写en
  • D 中是否有相当于 C++ 的 Future/Promise ?

    D 世界中是否存在 C 世界中的未来 承诺等价物 当然有标准并行度 http dlang org phobos std parallelism html但它并不完全具有承诺 未来组合的功能 没有相当于获取未来或设置结果或异常的功能 您也不能
  • 最有效的便携式溢出检测? [复制]

    这个问题在这里已经有答案了 与 C C 和 D 等金属语言类似 检测无符号 64 位溢出的最有效 合理可移植的方式是什么 即不使用汇编程序 尽管您可能假设二进制补码算术和环绕行为 乘法中的整数 通过将无符号类型可表示的最大值除以被乘数之一
  • Tango 的未来与 D1 的停产

    知道D1 will be discontinued effective December 31 2012 鉴于官方发行版位于 D1 之下 是否还值得继续使用 Tango 如果您谈论的是一旦 D1 的官方支持消失 是否值得继续使用 Tango
  • D 动态数组初始化、stride和索引操作

    抱歉 这成为了有关数组的三重问题 我认为 动态 数组在 D 中确实很强大 但以下问题已经困扰我一段时间了 在 C 中 我可以轻松地分配具有指定值的数组 但在 D 中 我还没有找到这样做的方法 当然下面的内容是没有问题的 int a new
  • 这个纯函数如何能够修改非私有状态?

    TDPL p 167 只要函数中的可变状态完全是暂时的 即在堆栈上分配 和private 即 不通过引用可能污染它的函数来传递 那么该函数可以被认为是纯函数 import std stdio writeln struct M int 4 d

随机推荐

  • 轻量级 Java 对象缓存 API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • ASP.NET - 获取 DirectoryEntry / SID 的主体 / 相对标识符 (RID)

    我在自定义 MembershipProvider 类中使用 Active Directory 对 ASP NET 2 0 Intranet 应用程序中的用户进行身份验证 并将其 sid 与该应用程序的配置文件相关联 当 的时候ActiveD
  • ColdFusion 和移动应用程序结构和安全性

    Overview 我希望开始使用 HTML5 jQuery 和 ColdFusion 开发 iOS 应用程序 我对此的理解是让 jQuery 为所有后端函数调用 ColdFusion API 伟大的 我的问题主要是关于页面结构和 API 安
  • 如何设置cassandra读写一致性

    我找不到这方面的文档 我知道cqlsh中有一致性命令 但是读一致性和写一致性没有区别 如何为读取和写入设置不同的一致性级别 此外 还提到了 默认 一致性级别 默认设置在哪里 它是用于读还是写 如何为读取和写入设置不同的一致性级别 如果您只想
  • struts2 + hibernate3 + jasper-report 5.0 ----- 得到空白报告

    我创建了一个应用程序 它使用 jasper report 5 0 struts2 和 hibernate 打印报告 jasper报告使用hql 该应用程序工作正常 但问题是我得到空白报告在浏览器中 当我触发 struts 操作时 但是当我在
  • VSCode 语法突出显示不适用于 Vue / Vetur

    在过去一周左右的时间里 我使用的每个 VUE 文件都没有语法突出显示 我通常有扩展名Vetur帮助对 VUE 文件进行语法突出显示和其他调整 到目前为止我尝试过的事情 卸载 重新安装 Vetur 更改 VScode 中的文件关联 确保 vu
  • Moose 结构类型

    我想在 Moose 中创建一个结构化类型 可以用作另一个 Moose 属性的类型 例如 我希望能够创建一个name有自己的属性value and error属性 因此 我想知道实现这一目标的最佳方法 我通过定义一个简单的 Moose 类来表
  • 将给定的十进制数转换为二进制数并计算连续的 1 并显示

    问题 将给定的十进制数转换为二进制数并统计连续的1并显示 示例案例1 5的二进制表示为101 因此连续1的最大数量为1 示例案例2 13 的二进制表示为 1101 因此连续 1 的最大数量为 2 解决方案 bin python3 impor
  • 为什么将 1 添加到 byte.MaxValue 会导致 256 而不是溢出[重复]

    这个问题在这里已经有答案了 我在 C 中有一段简单的代码 用于在向类型的 MaxValue 添加 1 时显示溢出错误 using System using System Collections Generic using System Li
  • dart 控制台应用程序中的 Ctrl+c

    Is there a way to catch CTRL C in dart console application For example press CTRL C to send clean closing packet to web
  • Ansible 循环遍历模板中的字母范围

    我正在尝试生成一个 Ansible 模板 该模板按字母顺序而不是数字顺序递增 有没有类似的功能range x 那可以帮助我吗 伪代码示例 for letter in range a d letter endfor 预期产出 a b c d
  • Prolog if 语句

    我正在尝试实现一个按如下方式工作的谓词 pred do this always if statement do this only when if statement is true do this also always independ
  • 设计数据仓库时使用临时数据库的好处

    我正在设计数据仓库架构 在探索从生产中提取数据并将其放入数据仓库的各种选项时 我遇到了许多文章 主要建议以下两种方法 生产数据库 gt 数据仓库 星型模式 gt OLAP立方体 生产数据库 gt 暂存数据库 gt 数据仓库 星型模式 gt
  • ViewChild 返回“未定义”-Angular2

    我试图通过按父组件上的按钮来执行子组件的功能 但由于某种原因它未定义 Parent com1 html
  • 如何查看Spark使用的核心数?

    I have spark cores max set to 24 3 个工作节点 但是如果我进入我的工作节点并看到只有一个进程 command Java 正在运行 该进程会消耗内存和 CPU 我怀疑它没有使用全部 8 个核心 在m2 4x
  • uiimageview isanimating 的替代方案

    我有一个代码在 UIImageView isAnimating 为 false 后执行一些操作 但有趣的是它永远不会出错 它总是处于 是 状态 iPhone 的 UIImageView isAnimating 返回错误 https stac
  • 如何在android MVP中应用组合?

    最近我接手了一个基于 MVP 构建的 android 项目 虽然简单的屏幕非常简单且易于阅读和维护 但应用程序的更复杂的部分却不然 多个继承级别导致我在类之间切换数天 试图找出信息流实际上是如何工作的 以下是问题较多的层次结构的一个示例 既
  • 嗅探 LPT 流量

    我需要拦截 LPT 输出流量 经过几个小时的研究 我开始明白 做到这一点的唯一方法是编写内核模式驱动程序 更准确地说是 过滤驱动程序 我已经下载了 WDK 但是术语和大量的驱动程序类型有点让人不知所措 我基本上是想了解什么kind我应该写的
  • 可移植 SQL 来确定表是否存在?

    是否有一种可移植的方法来确定数据库表是否已存在 便携的 我不这么认为 也许你能得到的最接近的是 select from table 如果表不存在 这将返回错误 table
  • 如何将 ubyte[] 解码为指定的编码?

    问题是 在运行时设置编码时如何解析文件 编码可以是 utf 8 utf 16 latin1 or other 目标是将 ubyte 从所选编码转换为字符串 因为当您使用 std stdio File byChunk 或 std mmFile