问题标签 [utf-16le]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 最新的 Office 更新后,php UTF-16LE 转换的文件无法在 Excel 中打开
我们有一个工作 PHP 代码片段很长时间了。我们生成简单的 HTML 表格,用户可以将这些表格保存为 XLS 文件。并在 Excel 中打开它。
现在,当我们打开此类文件时,Excel 会打开并显示一个完全空白的灰色区域。没有错误,没有消息。只是一片空白。它仅发生在 Office 2010 获得最后 (2016.07.14) 官方 Microsoft Office 更新的机器上!
上面提到的 PHP 片段非常简单:
BOM 在那里,并且 $out 包含该表。如果您在 $out 中放置任何简单的表 - 它不会被唤醒。例如:
这很奇怪,因为如果我在 Notepad++ 中打开生成的文件并再次保存(没有改变),Excel 会正确打开它。
我认为问题出在 iconv 的某个地方......因为我删除了它 Excel 显示一些奇怪的字符。
有没有人有同样的情况?
我将不胜感激有关我的问题的任何帮助或建议。
utf-8 - 将 UTF-16LE Elixir 位串转换为 Elixir 字符串
给定一个以 UTF-16LE 编码的 Elixir 位串:
我怎样才能把它转换成可读的 Elixir 字符串(它拼写为“Devastator”)?我得到的最接近的是将上面的内容转换为 Unicode 代码点 ( ["0044", "0065", ...]
) 列表并尝试在\u
它们前面加上转义序列,但 Elixir 会抛出错误,因为它是无效序列。我没主意了。
java - 如何通过java编程检索Active Directory中的属性“unicodePwd”
首先,我为我糟糕的英语道歉。我是巴西人,所以如果文字有任何错误,请不要考虑。
我在这里阅读了很多关于在 Active Directory 中检索属性“unicodePwd”的文章,但实际上都没有帮助我。
那么,我为什么需要这些信息?我会解释:
我这里有一些 java 例程,它们将不同系统中的用户信息统一起来。该例程获取主 Oracle 数据库中所需的信息,并将信息设置在另一个数据库(基本上是 Oracle 和 MySQL)中。
例如:我们有一个私有云系统,它在 CentOS Linux 操作系统中运行,它拥有自己的 MySQL 数据库。为了统一用户信息,包括用户密码,我们从主Oracle数据库获取信息,并设置做本系统的MySQL数据库,统一用户详细信息和登录信息。
我在这里的所有例程都在工作,没有任何问题,但现在我们面临新的挑战。
我们需要对我们的 Active Directory 用户进行同样的统一,在这个主 Oracle 数据库中获取所需的信息,然后将所有信息设置到 Active Directory 用户中,包括用户密码。
我已经在 Active Directory 用户中成功更新了密码,但我不希望每次运行此 java 例程时都更新密码,但仅当主 Oracle 数据库中的密码更改时才更新密码。
示例:当其中一个用户更改主 Oracle 数据库中的密码时,java 例程获取此用户信息,然后在 Active Directory 中的同一用户中设置。为了正确地做到这一点,例程在 Active Diretory 中获取相同的信息,然后比较两个密码(Oracle 的密码和 Active Diretory 的密码),最后,如果密码不同,例程将更新它,但如果密码没有不同, 例程什么也不做。
这就是为什么我需要在 Active Directory 中检索属性“unicodePwd”。
这是我的一些代码:
运行代码后,所有变量都返回正确的信息,但变量“unicodePwd”返回“null”,即使用户有密码。
我知道字节 UTF-16LE 的事情,并且 Active Directory 中的“unicodePwd”字段是加密的,但是,正如我之前解释的,我需要在字符串变量中解密该信息。
有什么想法吗?
谢谢!
php - 如何检测 PHP 中的正确编码?mb_detect_encoding 不工作
我需要能够检测到字符串的编码,但 mb_detect_encoding 不起作用。
我从文件 ( file_get_contents
) 中获取字符串,并且我知道给我带来麻烦的文件是 UTF-16 LE。但是,从文档中,我了解到无法检测到这种编码(mb_detect_order:“对于 UTF-16、UTF-32、UCS2 和 UCS4,编码检测将始终失败。”)。
如何在 PHP 中以可靠的方式获取字符串的编码?任何可能的编码?
我浪费了几个小时试图解决这个问题,但我没有找到好的资源。我希望能够自动执行此操作,因此如果我的文件更改其编码,我的程序将能够处理它(我从另一个网站获取文件)。
我试过这个没有成功,它告诉我UTF-8:
我也试过这个:
swift - Swift 3: Encode String to UTF-16LE
I need to encode a string to UTF-16LE (and convert to sha1 later), but I'm having some problems. This is what I had tried:
But this is what I was expecting:
Same thing using utf8array:
So, this is what I did to "fix" it:
But I'm sure this is not the right way. Any suggestions?
perl - 如果文件写为小端或大端,如何签入perl?
实际上我必须解析一些可以是任何形式的字节序(大或小)的文件。如果我使用一种编码并解析另一种编码,Perl 解释器就会死掉。
或者
输出(对于 LE 和 perl 的编码为 BE 的文件)
unicode - 如何在 VS2015 中将我的文件保存为 UTF-16 LE 编码而不使用 BOM?
在此链接中,您将找到我在下面复制的表 1。请注意,该表第三列的标题指定:UTF-16LE w/ or w/o BOM
。我能够保存包含以下代码段的文件,
通过选择VS2015中菜单Advanced Save Options...
下的菜单选项,其中的正是对应的. 这可以在下面的第二张图片中查看,我粘贴了使用二进制编辑器获得的文件图像的副本。可以看到文件的前两个字节代表. 但我无法在对话框中找到使用. 我该怎么做?File
Unicode codepage 1200
UTF-16LE encoding with BOM
0xFF 0xFE
UTF16-LE encoding
Advanced Save Options...
UTF-16LE encoding without BOM
python - 使用 PyWinRM 将 powershell 脚本从 Linux 传输到 Windows
我正在尝试将用 Linux 编写的 powershell 脚本传输到托管在 Azure 中的 Windows 机器上。这个想法是将脚本复制到Windows机器并执行它。我正在使用 PyWinRM 来完成这项任务。PyWinRM 中没有直接的机制可以一次性传输文件。我们必须将文件转换为流,并在传输之前对文件进行一些字符编码,以便与 PowerShell 内联。详细解释请点击这里。用于将文件从 Linux 流式传输到 Windows 的 python 脚本如下所示
客户端.py
现在,当我运行脚本时,我得到的输出是
这里的争论点是输出中的以下几行。
STDOUT: ='www.google.com' = 测试连接 -ComputerName -Count 1 | 选择 -ExpandProperty IPV4Address
仔细看上面几行,和代码中的script_text字符串比较一下,你会发现在传输到windows完成后,以$ key开头的$hostname、$ipV4等变量名不见了。有人可以解释发生了什么以及如何解决它吗?提前致谢。:-)
python - Unicode 写入失败:charmap 无法编码字符
我有一个文本,其中有一个摘要。我用一些正则表达式来获取这个摘要,因为文本总是具有相同的结构。
在摘要中有一个句子“NAME 被归类为 ....”,我必须用文本中抓取的标题替换它,该标题由 word1 和 word2 组成,用逗号分隔。只要我这样做,它就可以正常工作(因此我不会添加完整的代码,因为它非常大而且我做不到,而且无论如何问题不在我将提供的范围之内。
我需要根据 word1 添加 unicode 字符 \u2191 或 \u2193 ,它与字典中的正值或负值相关联。这必须在替换句子之前完成。我的代码基本上如下:
然后 Traceback(最近一次通话最后一次):
现在,我无法弄清楚,我严重坚持这一点。
我不知道为什么它首先无法写入,因为它可以很好地显示标志,并且我在某些测试中明确编码到正确的系统,甚至使用正确的编码打开文件。
我尝试了各种你可以在那里阅读的东西:
确实原始代码更大,但我尝试了这个并且它以相同的方式工作,并且输入类型严格相同。
我读了这些:
UnicodeEncodeError: 'charmap' codec can't encode character '\u2010': character maps to <undefined>
UnicodeEncodeError: 'charmap' codec can't encode characters
Python, Unicode, and the Windows console
python 3.2 UnicodeEncodeError:' charmap' 编解码器无法对位置 9629 中的字符 '\u2013' 进行编码:字符映射到 <undefined>
最后,它们比其他任何东西都更令人困惑。
无论如何,问题并不像其他帖子那样出在控制台上,因为问题出在未显示的写入指令上,此外,角色在我的控制台上显示得很好......
我真的不知道发生了什么关于以及如何管理这个问题。
感谢您的见解。
php - 没有 mbstring 或 iconv 的 UTF-8 到 UTF16LE 转换
已经好几天了,我的头有点炸了。自从离开大学以来,我没有做过很多二进制数学,我正在努力解决这个问题。
我有一个基于 PHP 5.6 的相当锁定的系统,它不包括mbstring
函数也不iconv
. 我已经有了一个从 UTF-16 转换为 UTF-8 的函数(来自其他地方),但现在我需要反过来。
当我查看wikipedia时,单个字符的算法似乎相当简单,尽管我对确切的程序有点生疏。我相信移位将是必要的等。
但是,我想转换为整个字符串。如何确定每个角色的开始和结束时间?
有好心人能帮帮我吗?我想功能本身对于知道自己在做什么的人来说不会那么复杂。我太缺乏练习了,以至于我把自己绑在了结上。