⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 在vb中用二进制方式打开文件中的数据读到string型变量中为什么会出错.txt

📁 VB技巧问答10000例 VB技巧问答10000例
💻 TXT
字号:
在 VB中 一 定 要 记 住 , 不 能 使 用 String变 量 处 理 二 进 制 数 据 。 早 期 的 VB是 采 用 单 字 节 处 理 方 式 (通 常 也 称 为 ANSI方 式 ), 也 就 说 一 个 英 文 字 母 用 一 个 字 节 表 示 , 一 个 汉 字 算 两 个 字 节 , 当 然 这 样 就 可 能 出 现 半 个 汉 字 的 问 题 。 从 VB 4.0起 , VB采 用 了 一 种 新 的 处 理 方 式 , 即 内 部 采 用 Unicode方 式 , 即 不 论 英 文 字 母 还 是 汉 字 , 一 律 用 两 个 字 节 表 示 , 但 Unicode还 不 够 普 及 , 所 以 VB只 是 在 其 内 部 完 全 使 用 Unicode, 而 在 外 部 仍 转 换 为 人 们 习 惯 的 ANSI方 式 , 但 在 字 符 串 处 理 上 与 先 前 的 版 本 有 所 不 同 。 例 如 : 在 中 文 Windows或 英 文 Windows外 挂 RichWin 97中 , Len("电 子 &电 脑 ")=5(这 里 的 &号 为 半 角 字 符 ), 而 在 以 前 的 版 本 或 纯 英 文 Windows中 Len("电 子 &电 脑 ")=9。 除 了 Len、 Left、 Right等 字 符 串 函 数 受 此 影 响 外 , 所 有 字 符 操 作 都 受 此 影 响 。 如 果 你 把 二 进 制 数 据 读 入 字 符 串 变 量 , 在 读 入 的 过 程 中 会 发 生 转 换 错 误 , 这 样 你 再 写 入 文 件 数 据 也 就 不 对 了 。 以 上 的 讨 论 对 于 中 文 等 双 字 节 系 统 都 是 适 用 的 , 但 英 文 版 下 没 有 这 个 问 题 。 所 以 , 你 在 网 上 看 到 的 许 多 程 序 因 为 都 是 美 国 人 写 的 , 他 们 根 本 就 不 考 虑 这 个 问 题 , 使 用 字 符 串 来 处 理 二 进 制 数 据 , 但 这 样 的 程 序 在 中 文 系 统 中 肯 定 出 错 。 解 决 的 办 法 是 使 用 Byte数 组 来 处 理 二 进 制 数 据 , 这 样 就 不 会 有 你 说 的 问 题 了 。
<END>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -