当前位置:网站首页 > Java基础 > 正文

java调用dll动态库 java接收char*乱码(java调用dll 参数传递)



给出以下实现时,我面临的问题是,在另一个系统上,与原始 XML 文件相比,XML 文件缺少元音变音 (ä、ü、ö)。 XML 文件中插入的是替换字符,而不是变音符号。 (0xEF 0xBF 0xBD (efbfbd))

  • 获取包含带有变音符号的 XML 的 zip 文件
  • 解压 zip 文件
  • 将 xml 内容编码为 Base64 负载并将其保存到数据库
  • 查询实体
  • 获取 Base64 负载
  • 解码 Base64 内容
  • 解码后的 Base64 内容是一个 XML,其中应包含源变音符号

让我发疯的是,解码的 Base64 内容在另一个系统上缺少变音符号。我得到的不是元音变音而是替换字符。在我的系统上,相同的实现无需替换即可工作。

以下代码只是一个 MCVE,用于解释在我的系统上运行正常但在其他系统 (Windows Server 2013) 上解码后会丢失变音符号的问题。

这三个文件仅用于测试目的,但我希望您能解决问题

编辑

这两种方法都可以在我的机器上使用 ü、ö、ä 创建 XML 文件 仅WITHOUT 实现会在另一个系统上创建带有ü、ö、ä 的XML XML 文件WITH UTF-8 的“内容”字符串包含for ü =>

编辑#2

在我的机器上在 IntelliJ 中运行代码和在 IntelliJ 之外运行代码似乎也存在差异。不知道这会产生如此巨大的差异。因此,如果我在 IntelliJ 之外运行代码 (java.exe -jar myjarfile),WITH UTF8 部分将替换 Ü。与...我不知道。 Notepad++ 显示 xFC。有趣的是:我的树莓派显示这两个文件都带有 Ü,而我的 Windows/notepad++ 显示 xFC。

整件事让我很困惑,我想知道问题出在哪里。还因为 XML 文件包含 UTF8 作为 header 中的编码。

编辑 #3 最终解决方案

到此这篇java调用dll动态库 java接收char*乱码(java调用dll 参数传递)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • Java字符串转时间(java字符串转成时间)2025-04-09 11:00:09
  • java的网站(java相关网站包括)2025-04-09 11:00:09
  • java爬虫与python爬虫的区别(java爬虫和python爬虫区别)2025-04-09 11:00:09
  • java面试题基础部分(java面试题基础题)2025-04-09 11:00:09
  • map转json字符串 java(map转json字符串java)2025-04-09 11:00:09
  • java面试基础笔试题(java面试题基础知识)2025-04-09 11:00:09
  • tcp协议java(tcp协议的主要特点)2025-04-09 11:00:09
  • vscode中配置java环境(vscode配置java环境变量)2025-04-09 11:00:09
  • java面试题以及答案(java面试题加答案)2025-04-09 11:00:09
  • java天气预报接口(java天气预报程序)2025-04-09 11:00:09
  • 全屏图片