Java 中 HTML 字符编码的转换

2024-02-08

我们正在尝试下载网页源代码,但是由于字符编码的原因,我们无法正确看到某些特定字符,例如 ü、ö、ş、ç。我们尝试了以下代码来转换字符串(“text”变量)的编码:

byte[] xyz = text.getBytes();
text = new String(xyz,"windows-1254"); 

我们观察到,如果编码是utf-8,我们仍然无法正确看到页面。我们应该做什么?


如果您知道页面将其内容编码为 UTF-8,请告诉 String 构造函数使用 UTF-8 编码来解释字节。

但是我不确定这是否是您问题的严重程度。在尝试“转换”它之前,您已经有了“文本”。这意味着某些东西已经尝试根据某种编码将页面的字节解释为字符串。如果这是错误的编码,那么您以后所做的任何事情都不一定能修复它。

相反,您需要修复这个上游问题。

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

Java 中 HTML 字符编码的转换 的相关文章

随机推荐

  • PHP: header("位置...突然停止工作

    我在我的服务器上修改了一个非常简单的 php 页面 它停止工作了 结果我得到一个空白页 其中没有源代码 我修改回以前的网址 但它仍然不起作用 这是怎么回事 Thanks
  • Mongoose 复合索引唯一 + 稀疏

    我想创建一个索引来确保我没有重复的serialNr的组合内 manufacturer art 但有些物品没有serialNr 这些我不想检查 索引 Code mySchema index serialNr 1 art 1 manufactu
  • 多核和java

    我刚刚读到 服务器如何处理多个请求 最终得到了 java 多线程和多核 cpu 在计算机是单核的时候 如果 java 同时有 2 个线程 那么 jvm 调度程序将负责为每个线程分配时间 因此 两个线程永远不会并行运行 而是利用理想时间 例如
  • 如何在单独的线程中创建带有进度条的MFC对话框?

    我的应用程序可能需要一段时间才能连接到数据库 此连接是通过单个库函数调用建立的 即我无法将进度更新放在那里并进行回调或类似的操作 我的想法是在连接到数据库之前在单独的线程中创建一个带有进度条的对话框 该对话框将不断更改进度状态CProgre
  • 从 VIM 插件中检测文件类型?

    我有一个 vim 插件 它定义了一堆键映射 我试图弄清楚如何根据文件类型更改键映射的定义 例如 如果文件是 py 则将键映射到 X 如果文件是 php 则将键映射到 Y Thanks 是的 一种方法是使用 autocmd 调用设置地图的自定
  • 使用 DDD 创建子实体的正确方法

    我对 DDD 世界相当陌生 在阅读了几本有关它的书籍 其中包括 Evans DDD 后 我无法在互联网上找到我的问题的答案 使用 DDD 创建子实体的正确方法是什么 你看 互联网上的许多信息都在某种简单的层面上运作 但细节是魔鬼 为了简单起
  • iOS地理围栏中区域可以设置的最大和最小半径是多少

    我当时正在 iOS 中进行地理围栏工作 我实际上想在地图上设置不同的区域 每个区域的半径不同 我实际上想知道 iOS 地理围栏中区域的最小和最大半径 Thanks 在 iOS 中 没有指定最小半径 苹果表示 具体的阈值距离由硬件和当前可用的
  • laravel dusk TeaDown() 必须与 Illuminate\Foundation\Testing\TestCase::tearDown() 兼容

    public function tearDown this gt browse function Browser browser browser gt click navbarDropdown gt click dropdown item
  • 这些嵌套向量是如何连接的?

    我编写了一段代码 它创建了一个向量 记分板 其中包含 3 个大小为 3 的独立向量 所有向量都包含符号 在所有索引 0 2 处 当我现在执行 向量集 时在记分牌的第一个向量上 要将其第一个元素更改为 X 向量 2 和 3 也会更改 这是如何
  • 防止在 Javascript 中自动创建全局变量

    我刚刚花了一些时间调试一个问题 归根结底是忘记使用var关键字位于新变量标识符前面 因此 Javascript 会自动在全局范围内创建该变量 有什么方法可以防止这种情况发生 或者更改默认行为 而不使用像 JSLint 这样的验证器 在编写和
  • 如何仅在第一次启动时显示视图?

    我使用 Xcode 4 5 和故事板构建了一个应用程序 第一次启动应用程序时 我希望初始视图控制器出现 并附带必须接受才能继续的条款和条件 之后 我希望应用程序启动并跳过第一个视图控制器并转到第二个视图控制器 我知道我必须使用 NSUser
  • Android 4.3 BTLE作为服务器:如何启动广告?

    我正在尝试使用 4 3 中的新 BTLE API 在 Nexus 7 上实现 BTLE 服务器 我遇到了几个问题 首先 SDK 中没有示例 唯一的例子是针对客户的 其次 文档实际上告诉你做错误的事情 它指出 人们必须使用BluetoothA
  • 如何检测 MemoryMappedFile 是否正在使用

    在 C 4 0 中 MemoryMappedFile有几种工厂方法 CreateFromFile CreateNew CreateOrOpen or OpenExisting 我需要打开MemoryMappedFile如果存在 则从文件创建
  • Gitlab docker 和 external_url

    你好 我使用 docker 安装了最新的 gitlab 我使用 p 10080 80 和 10022 22 启动容器 我可以浏览 gitlab 并执行我需要的操作 我什至可以分别使用端口 10080 和 10022 git 克隆 http
  • 如何在android webview中启用默认突出显示菜单?

    如何在 android webview 中启用默认文本突出显示菜单 例如 复制 粘贴 搜索 共享 在 Android 1 5 2 3 上工作 您可以使用emulateShiftHeld 自 2 2 起公开 但现在已弃用 此方法将您的 Web
  • 使用 'hd' 参数限制 Google OAuth 访问一个域 (Django / python-social-auth)

    我正在构建一个内部网络应用程序供我的公司使用 并希望使用我们的 Google Apps 域来管理来自我们公司域用户名的访问 本问题的其余部分为 example com 我在用着 Django 1 9 5 python social auth
  • 如何在日期字段上显示日期选择器日历

    这是关于如何使用 jQuerydate picker在 django 支持的站点中 models py is from django db import models class holidaytime models Model holid
  • 对数组使用限制?

    有没有办法告诉 C99 编译器我访问给定数组的唯一方法是使用 myarray index 说这样的话 int heavy calcualtions float restrict range1 float restrict range2 fl
  • 为 iPhone 本地化货币

    我希望我的 iPhone 应用程序允许用户使用适当的符号 等 输入 显示和存储货币金额 NSNumberFormatter 会做我需要的一切吗 当用户切换其区域设置并且这些金额 美元 日元等 存储为 NSDecimalNumbers 时会发
  • Java 中 HTML 字符编码的转换

    我们正在尝试下载网页源代码 但是由于字符编码的原因 我们无法正确看到某些特定字符 例如 我们尝试了以下代码来转换字符串 text 变量 的编码 byte xyz text getBytes text new String xyz windo