android httpclient 和 utf-8

2023-12-11

我正在尝试连接到一个网络服务,我的查询中保存了一些数据。不好的是,这些数据包含utf-8字符,这会出现问题。

如果我只是使用普通字符串调用 HttpGet,则会出现“非法字符”异常。所以我用谷歌搜索并尝试了一些 utf-8 魔法。

            HttpClient httpclient = new DefaultHttpClient();
        httpclient.getParams().setParameter("http.protocol.content-charset", "UTF-8");
        String utfurl = URLEncoder.encode(url, "utf-8");
        HttpGet httpGet = new HttpGet(utfurl);
        HttpResponse response = httpclient.execute(httpGet);
        content = response.getEntity().getContent();
            } catch (Exception e) {
                Log.d(TAG, "getInputStream: " +e.getMessage());

现在我不会得到非法字符,但它似乎完全弄乱了 utfurl,因为我得到了“目标主机不能为空,或在参数中设置”。可能是因为他无法识别混乱字符串中的“http://”部分。 有什么建议吗?

Regards


我认为您需要一个 URL 编码的查询字符串。如果是这样,请使用:

String query = "?param=value";
String host = "http://my.host.name.com/";
String encodedUrl = host + UrlEncoder.encode(query,"utf-8");

基本思想是您只想对查询字符串进行编码,而不是主机名或协议。

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

android httpclient 和 utf-8 的相关文章

  • 使用workmanager时Firestore脱机持久性错误

    我正在使用一个WorkManger定期从我的中检索信息Firestore当应用程序处于后台和前台时的数据库 此信息用于根据状态更新 UI 因此不同的状态会添加或删除 UI 的不同部分 第一次运行时效果很好 但是 一旦应用程序处于后台并且Wo
  • 在 Android Studio 中,为什么我必须在模拟器中单击“运行应用程序”两次才能启动应用程序?

    在 Android Studio 中 当我按播放按钮在 Android 模拟器上安装并运行应用程序时 大约 5 10 秒后 我在屏幕底部收到一条消息 显示 安装成功 但应用程序实际上并未运行在模拟器上 我必须再次按下播放按钮 这是非常令人沮
  • Android - 从资产中解析巨大(超大)JSON 文件的最佳方法

    我正在尝试从资产文件夹中解析一些巨大的 JSON 文件 我如何加载并添加到 RecyclerView 我想知道解析这种大文件 大约 6MB 的最佳方法是什么 以及您是否知道可以帮助我处理此文件的良好 API 我建议您使用GSON lib h
  • 找不到处理意图 com.instagram.share.ADD_TO_STORY 的活动

    在我们的 React Native 应用程序中 我们试图让用户根据视图 组件中的选择直接将特定图像共享到提要或故事 当我们尝试直接使用 com instagram share ADD TO FEED 进行共享时 它以一致的方式完美运行 但是
  • 带有 EditText 和 Spinner 的对话框

    我有一个按钮 单击后会弹出一个对话框 我希望对话框有一个EditText and a Spinner对话框内 我不知道如何设置它的视图 我有一个代码AlertDialog它有效 只是EditText and Spinner我需要将其放入其中
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助
  • 是否有 ADB 命令来检查媒体是否正在播放

    我想使用 ADB 命令检查根植于终端的外部设备中是否正在播放音频 视频 我无法找到任何 ADB 命令 如果有 我尝试过 adb shell dumpsys media player 我想要一个命令来指定视频是否正在运行 您可以使用以下命令查
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 发布android后更改应用内购买项目的价格

    在 Google Play 上发布后 是否可以更改应用内购买商品的价格 我假设该应用程序也已发布 完整的在线文档位于http developer android com http developer android com也http sup
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 你的CPU不支持NX

    我刚刚下载了 android studio 但是我遇到了一个问题 当我运行它时 它说你的 cpu 不支持 NX 我应该怎么办 NX 或实际上是 NX 处理器位 是处理器的一项功能 有助于保护您的 PC 免受恶意软件的攻击 当此功能未启用并且
  • 在 SQLite 中搜索时排除 HTML 标签和一些 UNICODE 字符

    更新 4 我已经成功运行了firstchar例如 但现在的问题是使用regex 即使包含头文件 它也无法识别regex操作员 有什么线索可以解决这个问题吗 更新 2 我已经编译了sqlite3我的项目中的库 我现在正在寻找任何人帮助我为我的
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • Android向menuItem添加子菜单,addSubMenu()在哪里?

    我想根据我的参数以编程方式将 OptionsMenu 内的子菜单添加到 menuItem 中 我检查了android sdk中的 MenuItem 没有addSubMenu 方法 尽管你可以找到 hasSubMenu 和 getSubMen
  • 实现滚动选择 ListView 中的项目

    我想使用 ListView 您可以在其中滚动列表来选择一个项目 它应该像一个 Seekbar 但拇指应该是固定的 并且您必须使用该栏来调整它 我面临的一个问题是 我不知道这种小部件是如何调用的 这使得我很难搜索 所以我制作了下面这张图片 以
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • 在 MySQL 中存储表情符号的编码问题:如何使用 Prisma ORM 在 NodeJS 中定义字符排序规则?

    亲爱的 Nodejs 专家和数据库专家 我们在 MySQL 数据库中存储表情符号和其他特殊字符时遇到问题 我们使用 Prisma 得到一个错误 这是我们使用的 ORM 参数无法从排序规则 utf8 general ci 转换为 utf8mb
  • 捕获的图像分辨率太大

    我在做什么 我允许用户捕获图像 将其存储到 SD 卡中并上传到服务器 但捕获图像的分辨率为宽度 4608 像素和高度 2592 像素 现在我想要什么 如何在不影响质量的情况下获得小分辨率图像 例如我可以获取或设置捕获的图像分辨率为原始图像分
  • Crashlytics 出现 Android Studio 构建错误

    我正在尝试将 CrashLytics 与 Android Studio 和 gradle 一起使用 但出现一个令人困惑的错误 java lang NoSuchMethodError 我的 build gradle 是 buildscript

随机推荐

  • Rust 相当于 Try-Catch 语句吗?

    是否可以在 Rust 中一次处理多个不同的错误 而不是单独处理而不使用额外的函数 简而言之 Rust 中相当于 Try Catch 语句的是什么 一个相似的feature早在2016年就有人提出过 但我不知道结果如何 例如 做这样的事情 t
  • 访问同一 DataFrame 列中的先前值

    这是我的代码 a pd DataFrame 1 2 3 4 5 6 7 8 9 10 columns A B print a a C 1 or np nan or is there a way to avoid this b lambda
  • 如何从 UWP 中的 IBuffer 或字节数组创建 IDirect3DSurface

    我想用一些内容创建一个视频RenderTargetBitmap在 UWP 中 我这样做是通过使用MediaClips From RenderTargetBitmap我可以得到一个IBuffer或像素字节数组 创建一个MediaClip我需要
  • Swift Codable 重用在不同模型结构/类之间共享的键子集

    我想知道是否有一种可行的方法可以通过使用自定义解码器初始化程序和 或多个容器和编码键来跨多个模型共享公共属性 这是我想要映射到相应的可编码模型的 JSON 对象 JSON 对象 我想要映射到的属性Codable is sprites 正如你
  • Azure 云服务上的 Microsoft.Jet.OLEDB.4.0 错误

    我的要求是将excel文件上传到网站根目录上的文件夹 然后将该文件的数据读取到数据表中 这在我现有的托管提供商上运行良好 但现在我已经将我的网站上传到 Windows Azure 云服务上 移植到 Azure 云服务后 我在 Microso
  • Matlab将向量转换为二进制矩阵[重复]

    这个问题在这里已经有答案了 我有一个大小为 m 1 的向量 v 其元素是从 1 n 中选取的整数 我想创建一个大小为 m n 的矩阵 M 如果 v i j 则其元素 M i j 为 1 否则为 0 我不想使用循环 只想将其实现为简单的向量矩
  • Groovy:Node.replaceNode 为 Node?

    假设我有一个节点想要替换为replaceNode 但是 我不想使用Builder做到这一点 或者更确切地说 我已经有了用来替换它的节点 replacement new XmlParser parse input xml root depth
  • 是否有用于访问给定部署的云功能的版本号的变量

    GCP 在控制台中显示已部署的云功能的版本号 目前还没有系统环境变量其中包含有关部署的信息 没有版本 也没有部署日期 鉴于版本更新需要相当长的时间来更新 30 秒以上 和传播 此类版本信息将很有用 最近发布的nodejs10运行环境现在包括
  • 使用 Chef 运行所有 sql 文件

    你好 我需要帮助 我做了一个命令 应该读取 sql dumps 文件夹内的所有 sql 文件 但它不起作用 这是我得到的 execute Run SQL Files do dirResults Dir glob tmp sql dumps
  • 类型错误:无法读取未定义的属性“图像”

    我的源代码有问题 但我无法弄清楚是什么 请帮忙 我正在寻找一些解决方案 找到了一些解决方案并根据它们更新了源代码 但没有帮助 var express require express var fs require fs var bodyPar
  • 当新节点插入 dom 时是否会触发 jquery 事件?

    当将 dom 元素插入到 dom 中时 jquery 是否会在 dom 元素上触发事件 例如 假设我通过 ajax 加载一些内容并将其添加到 DOM 在其他一些 javascript 中 我可以使用 live 添加一个事件 这样当与特定选择
  • 在代码中稍后的某个时刻显示seaborn图

    假设在我的代码中的某个时刻 我有以下两个图表 即 graph p changes 和 graph p contrib line grapgh p changes df p change year interest accrued trade
  • 根据子数组的第二个元素对多维数组进行排序

    我有一个像这样的数组 G 10 A 22 S 1 P 14 V 13 T 7 C 0 I 219 我想根据第二个元素按降序对其进行排序 理想的输出是 I 219 A 22 P 14 list sort sorted接受可选key范围 key
  • 邻接表和邻接矩阵能够在逻辑上呈现非线性数据结构

    邻接表和邻接矩阵如何能够在逻辑上呈现非线性数据结构 即使它们本身是线性的 有人请解释一下 堆栈 队列 列表 向量 数组 它们都是线性存储数据 因为项目是一个接一个地存储的 有一个概念 A 项来了 before项目 B 和 项目 C 来了af
  • 第 5 次迭代后阶乘循环结果不正确

    我目前正在学习微积分预科课程 并认为我会编写一个快速程序 给出阶乘 10 的结果 在测试它时 我注意到在第 5 次迭代后我得到了不正确的结果 然而 前 4 次迭代是正确的 public class Factorial public stat
  • 使用 C# 中的正则表达式返回包含匹配项的整行

    假设我有以下字符串 string input Hello world n Hello foobar world n Hello foo world n 我有一个正则表达式模式 由我正在编写的工具的用户指定 foobar 我想返回每行的整行i
  • 获取嵌套字典中所有键的列表

    我想获取包含列表和字典的嵌套字典中所有键的列表 我目前有这段代码 但似乎缺少向列表添加一些键 并且还重复添加了一些键 keys list def get keys d or l keys list if isinstance d or l
  • NSDate initWithString

    将 Xcode 更新到版本 4 2 后 我在当前项目中收到以下警告 警告 NSDate 可能不会响应 initWithString 我必须做什么 此方法仅在 Mac OSX 页面的文档中注明 在 iOS 中未注明 我不清楚为什么苹果有不同的
  • 如何将索引处的行插入排序的ag-grid

    我有一个启用排序的网格设置 每行都有一个重复按钮 复制行时 我想在复制的行下方插入新行 这适用于默认排序 但如果您对列进行排序 例如状态 它会将该行随机插入到网格中 从而很难找到 我注意到网格在保存过程中的某个时候会进行排序 但在它得到分配
  • android httpclient 和 utf-8

    我正在尝试连接到一个网络服务 我的查询中保存了一些数据 不好的是 这些数据包含utf 8字符 这会出现问题 如果我只是使用普通字符串调用 HttpGet 则会出现 非法字符 异常 所以我用谷歌搜索并尝试了一些 utf 8 魔法 HttpCl