草庐IT

unicode_literals

全部标签

C 编程、unicode 和 linux 终端

所以我想做的是将日语字符写入我的终端使用C和宽字符的屏幕。问题是我正在做的事情出了什么问题,以便我可以修复它,在使用宽字符和对于我正在尝试做的事情,您还有其他意见吗?错误代码:#include#includeintmain(){wprintf(L"%c\n",L"\x3074");}这行不通,但我想知道为什么。当我尝试使用wchar_t来保存一个值时,问题只会变得更糟:wchar_tpi_0=0x3074;//printsa"t"whenusedwithwprintfwchar_tpi_1="\x3074";//givescompiletimewarningwchar_tpi_2=L"

linux - 我如何在 linux 上对字符串进行 base64 编码,使其与 windows "Unicode.GetBytes.ToBase64String"匹配?

这个问题在这里已经有了答案:DifferentoutputbetweenPowershellToBase64String&Linuxbase64(1个回答)关闭6年前。这个问题应该已经有人回答了,但是我找不到了问题我如何在bash中对字符串进行“base64编码”,使其匹配“windows期望的内容”,即“Unicode.GetBytes.ToBase64String”上下文powershell帮助文本中有这个例子$command='dir'$bytes=[System.Text.Encoding]::Unicode.GetBytes($command)$encodedCommand=

python - 格式化固定宽度的字符串(unicode 和 utf8)

我需要以类似表格的格式解析和输出一些数据。输入采用unicode编码。这是测试脚本:#!/usr/bin/envpythons1=u'abcd's2=u'\u03b1\u03b2\u03b3\u03b4'print'1234567890'print'%5s'%s1print'%5s'%s2在像test.py这样的简单调用的情况下,它按预期工作:1234567890abcdαβγδ但是如果我尝试将输出重定向到文件test.py>a.txt,我会收到错误消息:Traceback(mostrecentcalllast):File"./test.py",line8,inprint'%5s'%s

c++ - 在 Linux 中将 std::string 转换为 Unicode

编辑在意识到问题一开始是错误的之后,我修改了问题。我正在将C#应用程序的一部分移植到Linux,我需要在其中获取UTF-16字符串的字节:stringmyString="ABC";byte[]bytes=Encoding.Unicode.GetBytes(myString);因此bytes数组现在是:"650066006700"(bytes)如何在Linux上用C++实现相同的功能?我有一个定义为std::string的myString,Linux上的std::wstring似乎是4个字节? 最佳答案 你的问题不是很清楚,但我会尽力

sql-server - 连接到 MSSQL(或替代方案)的 sqsh 中的 Unicode

我有一个MSSQL数据库,其中包含Unicode(utf8)数据。我的工作站是linux(目前是Ubuntu),我在寻找一个与mssql数据库一起工作的工具,我找到了SQSH。问题是-当我在sqsh控制台中选择数据时,我得到的是乱码而不是unicode字符。使用开关“-Jutf8”或“-Jutf-8”没有任何改变。问题是-如何设置sqsh以使用utf-8数据?如果不可能,您是否知道任何可从linux中使用的替代工具来处理充满utf-8数据的mssql数据库。我需要执行各种T-SQL,运行预先准备好的SQL脚本文件,并输出结果以供后续处理。也可以使用良好的GUI(开源),不限于shell

python - 了解 Python Unicode 和 Linux 终端

我有一个Python脚本,它使用UTF-8编码编写一些字符串。在我的脚本中,我主要使用str()函数来转换为字符串。看起来像这样:mystring="thisisunicodestring:"+japanesevalues[1]#japanesevaluesisalistofunicodevalues,Iamsureitisunicodeprintmystring我不使用Python终端,只使用标准的LinuxRedHatx86_64终端。我将终端设置为输出utf8字符。如果我执行这个:#pythonmyscript.pythisisunicodestring:カラダーズソフィー但如果

windows - Linux 和 Windows 下的 boost::filesystem 和 Unicode

以下程序在Windows下的VisualStudio2008中编译,均使用字符集“使用Unicode字符集”和“使用多字节字符集”。但是,它无法在Ubuntu10.04.2LTS64位和GCC4.4.3下编译。我在两种环境下都使用Boost1.46.1。#include#includeintmain(){boost::filesystem::pathp(L"/test/test2");std::wcoutLinux下编译错误为:test.cpp:6:错误:‘std::wcout在我看来,Linux下的boost::filesystem没有在path::native()中提供宽字符串,尽

c - fprintf,错误 : format not a string literal and no format arguments [-Werror=format-security

当我尝试在Ubuntu上编译fprintf(stderr,Usage)时,我遇到了这个错误:error:formatnotastringliteralandnoformatarguments[-Werror=format-security但是当我在其他linux发行版(RedHat、Fedora、SUSE)上编译时编译成功。有人有想法吗? 最佳答案 你应该使用fputs(Usage,stderr);如果您不进行格式化,则无需使用fprintf。如果要使用fprintf,请使用fprintf(stderr,"%s",Usage);de

linux - 在 Linux 上预览 unicode 字体

Linux上是否有可让我预览Unicode字体的工具。Fontforge允许我查看可用的字形和Unicode范围,但显示非常粗糙。Gnome字体查看器仅显示拉丁语范围。理想情况下,该工具会接受给定编码的字符串,然后显示该字符串的预览。问候。 最佳答案 GNOMECharacterMap(安装在大多数gnome友好的系统上,试试charmap)可以给你你需要的东西。 关于linux-在Linux上预览unicode字体,我们在StackOverflow上找到一个类似的问题:

linux - 如何在 linux 中重新添加 unicode 字节顺序标记?

我有一个相当大的SQL文件,它以FFFE的字节顺序标记开头。我使用支持unicode的linux拆分工具将此文件拆分为100,000行block。但是当将它们传回窗口时,它不除了第一个部分之外的任何部分,因为只有它有FFFE字节顺序标记。如何使用echo(或任何其他bash命令)添加这两个字节的代码? 最佳答案 基于sed的solutionofAnonymous,sed-i'1s/^/\xef\xbb\xbf/'foo将BOM添加到UTF-8编码文件foo中。有用的是它还可以将ASCII文件转换为带BOM的UTF8