草庐IT

ascii_lowercase

全部标签

c++ - 如何在 Linux 中打开包含非 Ascii 字符串的 wchar_t* 文件?

环境:Gcc/G++Linux我在文件系统中有一个非ASCII文件,我要打开它。现在我有一个wchar_t*,但我不知道如何打开它。(我信任的fopen只打开char*文件)请帮忙。非常感谢。 最佳答案 有两种可能的答案:如果您想确保所有Unicode文件名都可表示,您可以硬编码文件系统使用UTF-8文件名的假设。这是“现代”Linux桌面应用程序方法。只需将字符串从wchar_t(UTF-32)转换为带有库函数的UTF-8(iconv可以很好地工作)或您自己的实现(但要查找规范,这样您就不会不要像Shelwien那样把它搞得一团糟

regex - 如何使用 sed 删除非 ascii 字符

我想从某个文件中删除非ascii字符。我已经尝试过这么多正则表达式。sed-e's/[\d00-\d128]//g'#notworkingcat/bin/mkdir|sed-e's/[\x00-\x7F]//g'>/tmp/aa但此文件包含一些非ascii字符。[root@asssdsada~]$hexdump/tmp/aa|more0001020304050607-08090A0B0C0D0E0F0123456789ABCDEF00000000454C46B0F07338C0-C0BCBCFFFF616161ELF..s8......aaa00000010A0A050E5746450

linux - 如何将 Linux 键码从/dev/input/event* 转换为 ASCII

我正在尝试将从/dev/input/event0中定义的值中读取的键盘事件转换为它们在未运行X或终端的嵌入式应用程序中的ASCII等价物。我认为这应该通过Linux中定义的键映射功能来完成,而不是仅仅创建我自己的std::map但我似乎找不到一个好的起点。到目前为止,我发现的大多数示例都假定我正在使用X窗口或终端运行。 最佳答案 文本输入(除了非常简单的传统美式键盘和7位ASCII标准)是一个极其复杂的领域。我强烈建议您使用X客户端执行此操作,您可以在其中利用所有现有的输入法。但如果您必须这样做,并且您对一种键盘和一种语言感到满意,

regex - 尝试仅删除非 ASCII 字符

这个问题在这里已经有了答案:Removenon-ASCIIcharactersfromCSV(11个答案)关闭9年前。我正在尝试操作一个文本文件并从文本中删除非ASCII字符。我不想删除该行。我只想删除有问题的字符。我正在尝试使以下表达式起作用:sed'/[\x80-\xFF]/d'

linux - GNU 排序命令的行为(带有非字母 ASCII 字符,例如点或分号)

我希望sort命令平等对待所有字符。例如,当我这样做的时候$echo-e'TEST.b\nTESTa\nTESTc'|sortTESTaTEST.bTESTc点被忽略。我想在最后或第一个位置获取TEST.b。但是,我在手册页中找不到合适的参数。(我的sort版本来自GNU核心实用程序)。 最佳答案 强制使用C进行排序以比较原始字符值。$echo-e'TEST.b\nTESTa\nTESTc'|LC_COLLATE=CsortTEST.bTESTaTESTc 关于linux-GNU排序命令

linux - 查找和删除具有非ASCII名称的文件

我有一些包含不可打印字符的旧迁移文件。我想找到所有具有此类名称的文件,并将其从系统中完全删除。例:ls-l-rwxrwxr-x1cwscws0Dec282011??"??ls-lb-rwxrwxr-x1cwscws0Dec282011\a\211"\206\351我想找到所有这样的文件。这是我在此类文件夹中执行ls时看到的示例屏幕截图:我想找到这些带有不可打印字符的文件,然后将其删除。 最佳答案 非ASCII字符ASCII字符代码范围从0x00到十六进制0x7F。因此,任何代码大于0x7F的字符都是非ASCII字符。这包括UTF-8

linux - 使用 hexdump 仅输出 ASCII

我正在尝试输出对应于某些二进制数据的ASCII值。我已成功应用hexdump实用程序并排输出hexdump和ASCII,如下所示:00000120202020203d2030783030303030303330|=0x00000030|000001300a010000002300000075756964302020|.....#...uuid0|000001402020202020202020202020202020203d|=|0000015020307839303832616335610a01000000|0x9082ac5a.....|0000016023000000757569

linux - "grep"二进制文件中 ascii 字符串的偏移量

我正在生成二进制数据文件,这些文件只是一系列连接在一起的记录。每条记录都包含一个(二进制)标题,后跟二进制数据。在二进制header中是一个80个字符长的ascii字符串。在此过程中,我编写文件的过程有点困惑,我试图通过检查每条记录的实际长度来调试此问题。This似乎非常相关,但我不了解perl,所以我无法在那里获得公认的答案。另一个答案指向我编译的bgrep,但它要我给它一个十六进制字符串,我宁愿有一个工具,我可以给它提供ascii字符串,它会找到它在二进制数据中,打印字符串和找到它的字节偏移量。换句话说,我正在寻找这样的工具:toolfoobarfilename或toolfooba

namespaces - 输入中的意外字符 : '\' (ASCII=92) state=1 in a Silex Application

我将我的网站从本地网站转移到托管网站,然后发生了一些事情。我将此配置文件包含到我的index.php中(这是我做的第一件事):register(newSilex\Provider\TwigServiceProvider(),array('twig.path'=>array(__DIR__.'/../views',__DIR__.'/../views/backend',__DIR__.'/../views/layouts',__DIR__.'/../views/components',__DIR__.'/../views/backend/components',),));$app->re

php - 如何在 PHP 中检查文件是 ASCII 还是二进制

有没有一种快速、简单的方法可以使用PHP检查文件是ASCII还是二进制文件? 最佳答案 这只适用于PHP>=5.3.0,并且不是100%可靠,但是,嘿,它非常接近。//returnmimetypealamimetypeextension$finfo=finfo_open(FILEINFO_MIME);//checktoseeifthemime-typestartswith'text'returnsubstr(finfo_file($finfo,$filename),0,4)=='text';http://us.php.net/man